JSL: come modificare la larghezza di una casella combinataCiao a tutti,
Sto lavorando su un codice JSL in cui ho alcune caselle combinate elencate in una V List Box(); Gli elenchi per le caselle combinate hanno tutti caratteri di lunghezza diversa, ma mi piacerebbe che le caselle combinate avessero tutte la stessa larghezza.
La normale chiamata <
Ho provato a cercare questo, ma la maggior parte delle discussioni riguarda le caselle di testo () o altri elementi simili, non le caselle combinate ().
Qualsiasi suggerimento aiuta.
Grazie!,
DS
Modellazione statistica avanzataAutomazione e scriptingConsumatori e ricerche di mercatoProgettazione di esperimentiPersonalizzazione di massaRi: JSL: Come modificare la larghezza di una casella combinataLa casella combinata effettivamente risponde al messaggio "<
Names Default To Here( 1 );
New Window( "test", a = Combo Box( {"i"} ) );
Show( a << Get Width ); //31
a << Set Width( 100 );
Show( a << Get Width ); //100
Wait( .1 );
Show( a << Get Width ); //31Per quanto riguarda la casella combinata più ampia che vedi quando l'elenco è solo {"i"}, sembra essere un problema del sistema operativo.Come puoi vedere, ottengo una larghezza di 31, eseguendo Windows 11.
Ri: JSL: Come modificare la larghezza di una casella combinataRapida correzione al mio post. Nel "PPS", stavo parlando del comando "Imposta larghezza", non di Ottieni larghezza. Ottieni larghezza sembra funzionare su caselle combinate. Ci scusiamo per l'eventuale confusione.
Ri: JSL: Come modificare la larghezza di una casella combinataQualcuno ha qualche idea su come rendere una casella combinata più stretta anziché più ampia? Anche se cambio gli elementi nel mio elenco solo in singoli caratteri, la larghezza della casella combinata sembra avere una mente propria:
Names Default To Here(1);
New Window("Example",
cb = Combo Box({"i"})
);
cb << Get Width;Con l'esempio sopra, la larghezza è 107. Questo è troppo grande per una singola lettera, secondo me. Ma se aggiungo una "j" all'elenco, quindi l'elenco è {"i", "j"}, la larghezza diventa effettivamente più stretto , e va a 71. Qualcuno sa perché?
PS: utilizzo JMP Pro 17.1.0 e MacOS Ventura 13.4.1.
PPS: rispondendo a @txnelson : Domanda sull'indice di scripting... Il comando "<< Ottieni larghezza" non è elencato in "Messaggi elemento" per la casella combinata, ma è elencato in "Messaggi elemento condiviso". Sono stato spesso confuso da questo, perché sembra suggerire che l'utente dovrebbe essere in grado di applicare << Ottieni larghezza a una casella combinata. Ma come discusso qui, non sembra essere così. Se i comandi in questa sezione "Messaggi di elementi condivisi" non possono essere necessariamente utilizzati nella casella di visualizzazione, qual è il significato dietro quella sezione (chiedendo sinceramente ... sono sinceramente curioso). Grazie!
Ri: JSL: Come modificare la larghezza di una casella combinataCIAO @ErraticAttack E @txnelson ,
Grazie per il tuo rapido feedback. Ho provato i caratteri di escape, ma non sempre funzionano come previsto a causa della differenza nella lunghezza dei caratteri delle diverse caselle combinate e delle loro voci. Ho finito per andare con @ErraticAttack La soluzione di come l'ambiente Lineup Box() ha funzionato perfettamente. Ora tornerò indietro e cambierò l'altro mio codice perché stavo usando gli ambienti H List Box() e V List Box() nidificati con voci Spacer Box(Size()) per modificare l'estetica della GUI. La Lineup Box() funziona alla grande ed è piuttosto semplice e intuitiva.
Grazie per l'aiuto!,
DS
Ri: JSL: Come modificare la larghezza di una casella combinataIl LineupBox incorporato è progettato solo per questo caso, ad esempio:
Names Default To Here( 1 );
New Window( "Example",
Lineup Box( N Col( 1 ), Spacing( 0, 2 ),
Spacer Box( Size( 120, 0 ) )
,
cb = Combo Box(
{"One", "Two", "Three"},
selection = cb << GetSelected();
Print( "Selected: " || selection );
)
,
cb2 = combo box( {"a","b","c"} )
);
);Ri: JSL: Come modificare la larghezza di una casella combinataIL Indice degli script per ComboBox mostra tutti i messaggi che possono essere impostati.La larghezza non è una di queste.Tuttavia sono stato in grado di gestire la necessità incorporando caratteri non stampabili.Ecco un esempio
Names Default To Here( 1 );
New Window( "Example",
cb = Combo Box(
{"One\!t", "Two", "Three"},
selection = cb << GetSelected();
Print( "Selected: " || selection );
),
cb2 = combo box( {"a \!t","b","c"})
);
