안녕하세요 여러분,
저는 전역 데이터 필터(단일 플랫폼에 로컬이 아닌)를 생성하는 일부 JSL 작업을 하고 있으며 이 필터는 패널 상자 내에 있습니다.
제가 겪고 있는 문제는 데이터 테이블의 열이 많기 때문에 데이터 필터가 기본 크기 설정으로 표시되고 원하는 것보다 훨씬 크다는 것입니다. Semiconductor Capability.jmp 파일을 사용하면 다음과 같습니다(기본값).

하지만 저는 이것이 다음과 같은 크기로 표시되기를 정말로 원합니다(이상적으로는 JSL을 통해 수정됨).

나는 트리 구조에 액세스하여 목록 상자 NLines() 명령을 통해 강제로 시도하려고 생각했지만 작동하지 않았습니다. 또한 <
내 스크립트에서 상주하는 데이터 필터 개요 상자 또는 패널 상자를 특정 크기로 강제하는 방법이 있습니까?
내가 사용하는 코드는 다음과 같습니다.
GDFLogic = V List Box( dt << Data Filter );
GDFPanelBox = Panel Box( "Global Data Filter", GDFLogic );
GDFLogic 변수는 VList Box()에 래핑된 데이터 필터를 참조한 다음 GDFPanelBox는 다시 GDFLogic의 표시 상자를 참조합니다. PanelBox는 JSL을 실행할 때 나타나는 새 창 내에 있습니다.
지금까지 시도한 옵션 중 어느 것도 제대로 작동하지 않았으며 전역 데이터 필터의 크기를 수동으로 조정한 다음 스크립트 창에 스크립트를 저장하려고 해도 사용하거나 방법을 이해할 수 있는 크기 조정 코드가 제공되지 않습니다. 데이터 필터 목록 상자의 크기를 조정합니다.
이 설명이 의미가 있기를 바랍니다. 이 문제를 해결하는 데 도움과 의견을 보내주셔서 감사합니다.
감사해요!,
DS
이것은 어느 정도 작동할 수 있습니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
nw = New Window("",
global_filter = dt << Data Filter(Location({1096, 73}));
);
lbb = nw << XPath("//ListBoxBox");
lbb << Set N Lines(5);
데이터 필터는 매우 지저분한 구조를 가지고 있으며 때로는 모양을 조작하는 것이 매우 어려울 수 있지만 이 경우 목록 상자 상자에 대한 참조를 가져오는 것이 작동하는 것 같습니다.

또한 사용 가능한 옵션은 수행 중인 작업에 따라 달라집니다.
안녕 @jthi ,
좋습니다. 빠른 답변과 해결책에 감사드립니다! 예, ListBoxBox에 액세스하는 데 성공했습니다. 트리 구조를 살펴보며 시도했지만 트리의 잘못된 레이어에 액세스했거나 전혀 액세스하지 않은 것 같습니다. XPath를 사용하면 다양한 레이어에 훨씬 더 쉽게 액세스할 수 있기 때문에 XPath를 사용하는 방법을 더 잘 알아야 합니다. 이 경우에는 미적인 이유로 목록 상자 상자에 더 적은 줄을 원했습니다.
감사해요!,
DS