실제로 Form의 오른쪽 상단에 있는 세 개의 버튼은 Form의 왼쪽 상단에 있는 ControlBox(ControlBox)의 여러 옵션(최소화/최대화/닫기)에 해당하며, 그 중 최대화(MaxButton) 및 최소화( Minbutton) 양식 속성에서 직접 설정할 수 있지만 VB에서는 "X" 버튼을 설정하는 기능을 제공하지 않습니다! 이 기능을 수행하려면 API를 사용해야 합니다.
"X" 버튼은 ControlBox의 닫기 옵션에 해당하므로 시스템 메뉴(즉, ControlBox)의 닫기 옵션만 제거하면 됩니다! 먼저 사용하고 있는 브라우저의 왼쪽 상단에 있는 시스템 메뉴를 살펴보세요. 6번째가 아닌 [닫기] 옵션은 무엇인가요? 7번째이고 구분선은 1개로 계산됩니다! 분배기는 6 번째입니다!
닫기 옵션을 제거하면 이상한 구분선이 남게 되므로 구분선도 함께 제거하는 것이 좋습니다. 메뉴의 Index는 0부터 시작하고 구분선은 6번째이므로 Index=5입니다.
정정: 프로그램 코드가 Windows NT에서 제대로 작동하도록 하려면 Integer 유형을 Long으로 변경하십시오. 89.05.04
'시스템 메뉴의 hwnd를 잡아라
PRivateDeclareFunctionGetSystemMenuLib"user32"별칭"GetSystemMenu"(ByValhwndAsLong,ByValbRevertAsLong)AsLong
'시스템 메뉴 API 제거
PrivateDeclareFunctionRemoveMenuLib"user32"별칭"RemoveMenu"(ByValhMenuAsLong,ByValnPositionAsLong,ByValwFlagsAsLong)AsLong
'첫 번째 매개변수는 시스템 메뉴의 hwnd입니다.
'두 번째 매개변수는 제거할 옵션의 Index->