나는 이것을 GitHub에 an issue on RRUZ's Vcl Style Utils 라이브러리로 게시했습니다. 그러나 나는 여기에서도 도움을 얻을 수있을 것이라고 생각했다.Vcl 스타일 Utils - 기본 양식 아이콘 제거
"Windows 10 Dark"스타일을 사용하여 Windows 10 사용자 인터페이스를 만들 때 VCL 스타일을 사용하고 있습니다. 또한 VCL 스타일 유틸리티를 사용하여 제목 표시 줄의 비 클라이언트 영역에 단추를 추가 할 수 있습니다. 나는 완전히 새로운 Windows 10 응용 프로그램처럼 뒤로 버튼을 사용하여 양식 아이콘과 기본 기능을 완전히 무시하려고합니다.
Vcl.Styles.NC
의 TNCControls
구성 요소를 사용하여 양식의 왼쪽 상단 모서리에 버튼을 배치하려고합니다. 그러나 폼의 아이콘 위에 단추를 배치하면 아이콘 영역에서 단추를 클릭 할 수 없습니다. 아이콘을 겹칠 수는 있지만 제목 표시 줄의 해당 특정 영역을 클릭하면 항상 거기에 배치 한 단추를 클릭하는 대신 양식의 시스템 메뉴가 열립니다. 나는 현재이 버튼을 만드는거야 어떻게
을 :이 클릭했을 때 팝업이 메뉴 원치 않는
는
procedure TfrmTestMain.SetupTitleBar;
var
B: TNCButton;
begin
FNCControls:= TNCControls.Create(Self);
B:= FNCControls.ButtonsList.Add;
B.Style := TNCButton.TNCButtonStyle.nsTranparent;
B.BoundsRect := Rect(0, 0, 45, 32);
B.UseFontAwesome:= True;
B.Caption := '';
B.ImageAlignment:= TImageAlignment.iaCenter;
B.ImageStyle:= TNCButton.TNCImageStyle.isNormal;
B.ImageIndex:= fa_chevron_left;
end;
지금까지 시도했다 :
완전히 비어있는 .ico 파일로 양식의 아이콘을 대체했습니다. .
양식 스타일을 bsSizeToolWin으로 변경했지만 제목 표시 줄이 너무 작아서 최소화/최대화 단추가 손실됩니다.
양식 스타일을 bsDialog로 변경했지만 위의 # 2와 같은 효과를 얻을뿐만 아니라 양식의 크기를 조정할 수 없습니다.
버튼 스타일이 nsPushButton인지 확인하고 양식 아이콘을 덮어도이 영역을 클릭해도 아이콘이 계속 클릭되어 기본 시스템 메뉴가 표시됩니다.
다음은 everything in this thread이지만, 결론은 Windows에서이 아이콘이 있어야한다는 것입니다.
양식의
BorderIcons
속성에서biSystemMenu
을 제거했지만 양식의 오른쪽 상단에있는 기본 단추를 제거하여 강제로 내 시스템 단추를 배치합니다.
어떻게 양식 아이콘과 기본 기능을 완전히 제거하여 Windows 10 스타일의 뒤로 가기 단추를 사용합니까?
시도하지만, 일반적으로 당신은 BorderIcons에 시스템 메뉴를 해제하고, 따라서 아이콘 및 시스템 메뉴 및 자막 버튼을 없애 할 수 있어야한다. –
BorderIcons에서'biSystemMenu'를 끄는 것이 효과가있을 것이라고 생각했지만 베를린의 어떤 이유로 든 최소화, 최대화 및 닫기 버튼도 제거합니다. 이것이 언제 망가 졌는지 확실하지 않습니다. –
@Ken, 표준 API 동작입니다. 캡션 버튼에는 ws_sysmenu가 필요합니다. –