사용자가 JSL에서 창 크기를 조정하는 것을 중지하는 방법은 무엇입니까?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />이것은 매우 간단한 질문처럼 보일 수 있지만 사용자가 JSL을 사용하여 창/대화 상자 크기를 조정하는 것을 막을 수 있는 방법이 있는지 궁금합니다.
자동 늘이기, 최소 및 최대 크기 등을 위해 표시 상자에 보낼 수 있는 메시지가 있습니다. 기본적으로 창 크기를 조정하는 사용자 기능을 끄는 플래그가 있습니까(예: 마우스 커서를 가리키면 크기 조정 화살표가 표시되지 않음) 창문 가장자리에? 뭔가 있을 것 같은데 찾을 수가 없네요.
감사해요.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?좋은 제안 데이브!나는 당신의 디자인을 정말 좋아하고 비슷한 일을 해볼 것입니다.나는 일반적으로 간단하고 구현하기 쉽지만 항상 가장 전문적으로 보이는 디자인은 아닌 마지막에 제공한 개요 상자 솔루션을 사용합니다.최종 사용자가 누구인지에 따라 결정된다고 생각합니다.대부분의 스크립트에서 그것은 바로 나 자신입니다.
관련사항: " 대화 상자를 닫으려면 콘텐츠 크기를 0으로 설정하거나 콘텐츠를 삭제할 수 있습니다(쉽게 다시 로드할 수 있도록 대화 상자 값을 네임스페이스에 캐시할 수 있음).
나는 'If box()'가 더 간단한 해결책이 될 것이라고 믿습니다.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?표시 상자의 크기 조정은 JMP 사용자 인터페이스에 내재되어 있기 때문에 프로그래밍 관점에서 크기 조정 문제를 해결하는 것은 어렵습니다.균형적으로 보면 항목 수가 많거나 이름이 긴 항목이 있을 때 목록 상자를 늘리는 등 정말 유용하다고 생각합니다.하지만 미학적으로 만족스러운 인터페이스를 디자인하려고 할 때 생활이 어려워질 수 있습니다.분할 상자는 사용자가 분할 구성 요소의 크기를 조정하도록 권장하는 경향이 있지만 도움이 될 수 있습니다!사용자 대화 상자와 출력 요소를 모두 포함하는 단일 창을 갖고 싶다면 상호 작용 수준을 고려해야 한다고 생각합니다. 나는 대화가 상대적으로 빈번하지 않은 상호 작용을 위한 이러한 유형의 구성을 자주 사용합니다.내가 선호하는 접근 방식은 대화 상자를 켜거나 끄는 토글 역할을 하는 버튼을 창에 두는 것입니다.

(대화상자가 없는 보고서 창 - 왼쪽 가운데 버튼 '옵션'을 누르면 대화상자가 켜집니다)

(대화상자가 켜진 보고서 창)
가장 기본적인 수준에서 이는 H 목록 상자에 정렬된 두 가지 콘텐츠로 구성됩니다.
대화 상자를 닫으려면 콘텐츠 크기를 0으로 설정하거나 콘텐츠를 삭제할 수 있습니다(쉽게 다시 로드할 수 있도록 대화 상자 값을 네임스페이스에 캐시할 수 있음).
더 간단한 해결책은 콘텐츠에 맞춰 수평으로 정렬된 개요 상자를 사용하는 것입니다.
dt = 열려 있는 ( "$SAMPLE_DATA/빅 클래스.jmp" ) ;
대화 = V 목록 상자 (
아웃라인 박스 ( "데모 대화 상자" ,
<< 개요 닫기 방향 ( "수직의" ) ,
라인업 상자 ( NCol ( 2 ) , 간격 ( 10 ) ,
텍스트 상자 ( "라벨 1" ) ,
텍스트 편집 상자 ( "값 1" ) ,
텍스트 상자 ( "라벨 2" ) ,
텍스트 편집 상자 ( "값 2" ) ,
)
)
) ;
콘텐츠 = V 목록 상자 (
이변량 ( 와이 ( : 무게 ) , 엑스 ( : 키 ) )
) ;
새창 ( "대화상자로 보고" ,
H 목록 상자 (
대화 ,
스페이서 박스 ( 크기 ( 10 , 0 )) ,
콘텐츠
)
) ;

아웃라인 닫기 방향(Outline Close Orientation) 메시지를 사용하면 내용이 창 측면으로 축소될 수 있습니다.

- 몇 가지 아이디어만요.
데이브
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?키워드는 "프로그래밍 언어"입니다. 여기서 jsl은 스크립팅 언어입니다.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?다시 한번 감사드립니다.
보고서 대화 상자의 경우 사용자가 창 크기를 조정할 수 있는 데 아무런 문제가 없었습니다. 이는 사용자 입력을 요청한 대화 상자의 경우였습니다. 여기에는 정보를 입력할 수 있는 고정된 수의 필드가 있으며 제 생각에는 크기를 조정할 필요가 없어야 하지만 순전히 미학을 위한 것이며 전체적인 계획에서 큰 문제는 아닙니다. 단지 GUI 위젯이 있는 다른 프로그래밍 언어에서는 크기 조정이 실제 목적에 도움이 되지 않기 때문에 경고 대화 상자 등과 같은 대화 상자의 크기를 조정하는 것을 사용자가 방지하는 옵션이 있을 뿐입니다. 그냥 가지고 있으면 유용한 옵션이 될 거라고 생각했어요.
어쨌든, H/V 스플리터 박스를 예로 들어주셔서 감사합니다. 앞으로 꼭 활용하게 될 것입니다. 건배.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?그게 목적이라면 모든 내용을 하나의 창에 담지 못하는 이유가 있나요?H 분배기 상자/V 분배기 상자를 사용하는 것이 아마도 가장 좋은 솔루션일 것입니다.다음 예제에서는 창에 모든 표시 상자가 표시되도록 유지하고 창 크기를 조정할 때 회색 공간을 방지합니다.스크립팅 인덱스에서:
이름의 기본값은 여기에 있습니다. ( 1 ) ;
새창 ( "쪼개는 도구" ,
V 스플리터 박스 (
크기 ( 800 , 600 ) ,
H 스플리터 박스 ( 그래프 = 그래프 상자 () , 스크립트 상자 () , << 크기 ( { 0.6 , 0.4 } ) ) ,
H 스플리터 박스 (
그림 = 그림 상자 ( 열려 있는 ( "$SAMPLE_IMAGES/tile.jpg" , jpg ) ) ,
스페이서 = 스페이서 박스 () ,
<< 크기 ( { 0.4 , 0.6 } )
)
)
) ;
그래프 [ 프레임박스 ( 1 )] << 자동 늘이기 설정 ( 1 , 1 ) ;
그림 << 최소 크기 설정 ( 100 , 100 ) ;
그림 << 최대 크기 설정 ( 500 , 500 ) ;
그림 << 자동 늘이기 설정 ( 1 , 1 ) ;
스페이서 << 채우기 설정 ( 1 ) ;
스페이서 << 색상 ( "빨간색" ) ;
스페이서 << 자동 늘이기 설정 ( 1 , 1 ) ;
이것이 더 나은 해결책이 될 것입니다.최종 사용자가 창 크기를 조정하도록 허용하지 않으면 결국 최종 사용자를 짜증나게 할 것입니다.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?안녕하십니까?
응답해 주셔서 감사합니다. 이 방법은 제대로 작동할 것으로 보이며 이 동작을 '속이는' 몇 가지 다른 방법이 있을 수 있습니다.
내가 이것을 원하는 이유는 사용자 입력과 보고를 위한 대화 상자 창이 있는 사용자 정의 응용 프로그램을 만들고 있기 때문입니다. 나는 사용자가 창을 클릭하고 크기를 조정하여 창이 창 내의 일부 표시 상자를 숨기거나 창을 더 넓게 끌어 보기 흉한 회색 공간으로 끝나는 것을 원하지 않습니다. 나는 이것이 순전히 미학적 이유라는 것을 인정하지만 단지 배포용 JSL로 애플리케이션을 작성하는 사람들에게 유용한 옵션이 될 것이라고 생각했습니다.
다시 한번 건배.
Re: JSL에서 사용자가 창 크기를 조정하지 못하도록 하는 방법은 무엇입니까?설명하는 기능은 모두 창 내의 표시 상자 크기를 조정하는 데 사용됩니다.하지만 창 자체가 변경되는 것을 중지하고 싶은 것 같습니다.왜 이렇게 하려는지는 모르겠지만 운영 체제 고급 사용자가 대답할 수 있는 문제일 수 있습니다.이것은 스크립팅 언어에서 얻을 수 있는 기능이 아닙니다.Windows 7,8,10 또는 Mac에서는 Snow Leopard, Capitan 등을 변경해야 합니다.
어쨌든, 속일 수는 있습니다.어쩌면 다음과 같은 것일 수도 있습니다.
뉴 = 새창 ( "당신을 위한 크기 조정은 없습니다" ) ; //예제 창 생성
크기 = 뉴 << 창 크기 가져오기 ; // 크기 가져오기
//크기 조정 함수
크기 조정 = 기능 ({} ,
뉴 << 창 크기 설정 ( 크기 [ 1 ] , 크기 [ 2 ]) ; //창 크기 조정
일정 ( 0.1 , 크기 조정 ()) ; //0.1초마다 창 크기 조정
) ;
//함수 호출
크기 조정 () ;
//환상을 완성하기 위해 스케줄러 창을 숨깁니다.
기다리다 ( 0 ) ;
창문 ( "스케줄러" ) << 쇼윈도우 ( 0 ) ;
//또는 << 창 크기 설정:
//nw << 확대 창;