2014-04-15 4 views
1

질문은 매우 간단합니다 - 툴바의 레이아웃을 오른쪽에서 왼쪽으로 (예 : 아이콘이 툴바 오른쪽에 정렬되고 순서가 반대로 바뀝니다. 첫 번째는 맨 오른쪽, 두 번째 것은 왼쪽에 있습니다.) in Delphi 7?Delphi의 RTL 레이아웃이있는 툴바?

TToolBarBiDiModeParentBiDiMode 속성을 게시하지 않습니다 내가 인터셉터 클래스에 게시 경우에도 나는 (SysLocale.MiddleEast = True으로의 과정) BiDiModebdRightToLeft로 설정하면, 아무것도 변경되지 않습니다.

나는 SetWindowLong와 도구 모음에 WS_EX_LAYOUTRTL을 설정하려고했으나 결과는 정말 지저분 - 도구 모음이 매우 심하게 다시 칠합니다. 게다가 아이콘 자체가 미러링되어 있으므로 원하는 것은 아닙니다. 오른쪽에서 왼쪽 순서로 표시하기를 원합니다.

+0

나는 그것을 할 수있는 방법이 없다고 생각합니다. eft를 선택하고 동적으로 크기를 설정하여 버튼이 오른쪽에 표시되도록합니다. – danisius

+0

그건 내 계획 B이지만, 나는 그것을 피하기를 희망하고 있습니다. – jedivader

답변

2

Delphi는 기본 Windows 공용 ToolBar 컨트롤이 TToolbar 또는 TToolButton을 지원하지 않기 때문에 TToolbar 또는 TToolButton에 대해 BiDiMode를 노출하지 않습니다. ToolBar에 대한 MSDN 설명서의 도구 모음 구성에 대한 가능한 값을 참조하십시오. 구성 할 때 사용 가능한 값이 없습니다 (TB_SETEXTENDEDSTYLE은 도구 모음 LTR/RTL 방향과 관련된 내용을 포함합니다.)

가로 또는 세로 방향을 구성 할 수 있습니다 TBSTYLE_EX_VERTICAL 플래그 (문서에 따라 권장되지 않음)를 사용하지만 LTR/RTR 버튼 정렬은 사용하지 않음 TB_SETDRAWTEXTFLAGS을 사용하여 DT_RTLREADING으로 텍스트 방향을 구성 할 수 있지만 버튼 정렬을 왼쪽에서 오른쪽으로 변경하지는 않습니다 도구 모음의 측면에