JSL: 콤보 상자의 너비를 변경하는 방법안녕 모두,
V List Box()에 나열된 콤보 상자가 있는 일부 JSL 코드에서 작업 중입니다. 콤보 상자의 목록은 문자 길이가 모두 다르지만 콤보 상자의 너비가 모두 같기를 바랍니다.
정상적인 <
이것을 찾아 보았지만 대부분의 토론은 Combo Boxes()가 아닌 Text Boxes() 또는 기타 유사한 항목에 관한 것입니다.
모든 제안이 도움이 됩니다.
감사해요!,
DS
고급 통계 모델링자동화 및 스크립팅소비자 및 시장 조사실험 설계대량 맞춤화Re: JSL: 콤보 상자의 너비를 변경하는 방법콤보 상자는 실제로 "<
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 ); //31더 넓은 콤보 상자의 경우 목록이 {"i"}뿐일 때 표시되며 이는 운영 체제 문제인 것으로 보입니다.보시다시피 너비는 31이고 Windows 11을 실행합니다.
Re: JSL: 콤보 상자의 너비를 변경하는 방법내 게시물에 대한 빠른 수정. "PPS"에서 나는 Get Width가 아니라 "Set Width" 명령에 대해 이야기했습니다. Get Width는 콤보 상자에서 작동하는 것 같습니다. 혼란을 드려 죄송합니다.
Re: JSL: 콤보 상자의 너비를 변경하는 방법콤보 상자를 더 넓게 만드는 대신 더 좁게 만드는 방법에 대한 아이디어가 있는 사람이 있습니까? 내 목록의 항목을 단일 문자로만 변경하더라도 콤보 상자 너비는 자체적으로 생각하는 것 같습니다.
Names Default To Here(1);
New Window("Example",
cb = Combo Box({"i"})
);
cb << Get Width;위의 예에서 너비는 107입니다. 내 생각에 이것은 단일 문자에 비해 너무 큽니다. 하지만 목록에 "j"를 추가하면 목록이 {"i", "j"}가 되고 너비는 실제로 더 좁게 , 그리고 71로 갑니다. 왜 그런지 아는 사람 있나요?
추신: 저는 JMP Pro 17.1.0과 MacOS Ventura 13.4.1을 사용하고 있습니다.
조달청: 회신 @txnelson : 스크립팅 인덱스에 대한 질문... "<< 너비 가져오기" 명령은 콤보 상자의 "항목 메시지" 아래에 나열되지 않지만 "공유 항목 메시지" 아래에 나열됩니다. 나는 종종 이것 때문에 혼란스러웠습니다. 사용자가 콤보 상자에 << Get Width를 적용할 수 있어야 한다고 제안하는 것 같습니다. 그러나 여기에서 논의한 바와 같이 그것은 사실이 아닌 것 같습니다. 이 "공유 항목 메시지" 섹션의 명령이 반드시 디스플레이 상자에서 사용할 수 없는 경우 해당 섹션의 의미는 무엇입니까(진심으로 묻습니다...진심으로 궁금합니다). 감사해요!
Re: JSL: 콤보 상자의 너비를 변경하는 방법안녕 @ErraticAttack 그리고 @txnelson ,
빠른 피드백에 감사드립니다. 이스케이프 문자를 시도했지만 여러 콤보 상자와 해당 항목의 문자 길이 차이로 인해 항상 예상대로 작동하지 않습니다. 나는 결국 함께 갔다 @ErraticAttack Lineup Box() 환경으로서의 솔루션은 완벽하게 작동했습니다. 이제 돌아가서 다른 코드를 변경하겠습니다. 왜냐하면 저는 GUI의 미학을 편집하기 위해 Spacer Box(Size()) 항목과 함께 중첩된 H List Box() 및 V List Box() 환경을 사용하고 있었기 때문입니다. Lineup Box()는 훌륭하게 작동하며 매우 쉽고 직관적입니다.
도와 주셔서 감사합니다!,
DS
Re: JSL: 콤보 상자의 너비를 변경하는 방법내장 LineupBox는 다음과 같은 경우를 위해 설계되었습니다.
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"} )
);
);Re: JSL: 콤보 상자의 너비를 변경하는 방법그만큼 스크립팅 인덱스 ComboBox는 설정할 수 있는 모든 메시지를 보여줍니다.너비는 그들 중 하나가 아닙니다.그러나 인쇄할 수 없는 문자를 포함하여 필요를 처리할 수 있었습니다.다음은 예입니다.
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"})
);
