小编sma*_*tiz的帖子

镜像时,TreeView的ScrollBar不接受VCL主题

TTreeView's 通过以下代码镜像Treeview时,ScrollBar不接受VCL主题:

procedure SetWinControlBiDi(Control: TWinControl);
const
 WS_EX_NOINHERITLAYOUT = $00100000;
 WS_EX_LAYOUTRTL = $00400000;
var
 ExStyle: Longint;
begin
 ExStyle := GetWindowLong(Control.Handle, GWL_EXSTYLE);
 SetWindowLong(Control.Handle, GWL_EXSTYLE, ExStyle or WS_EX_RTLREADING or WS_EX_RIGHT
   or WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT );
end;


procedure TForm2.FormCreate(Sender: TObject);
begin
   SetWinControlBiDi(TreeView1);
end;
Run Code Online (Sandbox Code Playgroud)

示例图片:

在此输入图像描述

我该怎么办?

请帮助我...

delphi treeview scrollbar vcl-styles delphi-xe8

5
推荐指数
1
解决办法
254
查看次数

使用VCL样式时的TListView滚动错误 - Delphi XE8

我试图通过以下功能设置TListView控制方向RTL:

procedure RTL_LV(lv:TListView);
const
  LVM_FIRST = $1000;
  LVM_GETHEADER = LVM_FIRST + 31;
var
  header: THandle;
begin
  header:= SendMessage (lv.Handle, LVM_GETHEADER, 0, 0);
  SetWindowLong (header, GWL_EXSTYLE,
                 GetWindowLong (header, GWL_EXSTYLE)  or
                 WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT);

  SetWindowLong (lv.Handle, GWL_EXSTYLE,
                 GetWindowLong (lv.Handle, GWL_EXSTYLE)  or
                 WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT);
  lv.invalidate;
end;
Run Code Online (Sandbox Code Playgroud)

但是当项目使用时,我有两个问题如下VCL Styles:

1:Vertical scrollbar没有点击它就不会出现.

在此输入图像描述

2:当我更改ListView列的大小并horizontal scrollbar单击时,将显示以下错误消息:

在此输入图像描述

例外来源: Vcl.ComCtrls.TListViewStyleHook.WMMouseMove

在此输入图像描述

procedure TListViewStyleHook.WMMouseMove(var Message: TWMMouse);
var
  SF: TScrollInfo;
  SPos: Integer;
  R: TRect;
begin
  if VertSliderState = tsThumbBtnVertPressed then
  begin …
Run Code Online (Sandbox Code Playgroud)

delphi listview bidi right-to-left vcl-styles

0
推荐指数
1
解决办法
682
查看次数