2013-03-05 5 views
5

두 개의 메인 폼 오른쪽에 두 개의 TToolBar이 있어야합니다. 그래서 세 개의 TPanel을 정렬에 넣은 다음 TToolBar을 넣습니다. 나는 지난 날에 동일한 너비를 가지고 있다고 아무런 소용이 없다고 toolbutton에게 말하려고 노력했다. 내가 발견 enter image description hereShowCaption이 True로 설정된 경우 TToolBar가 자동으로 단추 너비를 계산합니까?

ShowCaptionTrue로 설정되어있는 경우, 도구 모음이 자동으로 버튼의 폭을 계산하는 것이 : 여기에 내가 뭘 찾았는지의 스크린 샷이다. 내 질문은 왜, 어떻게 이것을 해제하는 것입니까?

답변

-2

+0

는'ButtonWidth'가 해당 값으로 복귀'TToolBar'는 –

+0

buttonwidth 내가 알고 TToolBar를 ...... –

+0

의 속성입니다 계산합니다. 그것은 도구 모음에 대해 이미 계산 된 값으로 되돌리기 때문에 나는 그것을 설정할 수 없습니다 –

2

이 한 번보세요 ........ 당신은 정적 값으로 버튼의 폭을 설정하는 객체 관리자를 사용하거나 동적으로 값을 설정하는 등 formcreate 또는 OnPaint를하거나하여 onResize를 사용할 수 있습니다 접근 방식 :

  1. 모든 버튼에 대해 자동 크기 조정을 거짓으로 설정합니다.
  2. 는 폼의 한 OnCreate 이벤트 내에서 다음과 같은 전화 : SendMessage(ToolBar3.Handle,TB_SETBUTTONWIDTH, 0, MAKELPARAM(0, <DEFAULT_WIDTH_THAT_YOU_WANT_TO_SET>));
  3. 것은 당신이 위의 호출 전에 버튼의 Visible 속성을 변경하지 않습니다 있는지 확인하십시오 - 그것은 보이지 않는 그 버튼에 실패한다.
  4. 또한 TB_SETBUTTONWIDTH 메시지의 사용 목록에 "CommCtrl"이 있는지 확인하십시오. 자세한 내용은

: http://zarko-gajic.iz.hr/ttoolbars-ttoolbutton-autosize-width-issues-empty-caption/

관련 문제