关于 ExtTextOutW 函数,请各位帮个忙,谢!
我新建了一个工程,在一个窗体里加进了一个 TTntTreeView 控件
调用以下代码在繁体和英文机上没有问题
procedure TForm1.TreeViewTestCustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var
xRect: TRect;
xText: WideString;
begin
DefaultDraw := False;
xRect := Node.DisplayRect(true);
xText := '测试';
ExtTextOutW(TreeViewTest.Canvas.Handle, xRect.Left,
xRect.Top, TreeViewTest.Canvas.TextFlags, nil,
PWideChar(xText), Length(xText), nil);
end;
可以正常显示,但调用以下代码中文部分显示 "?" 号
procedure TForm1.TreeViewTestCustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var
xRect: TRect;
xText: WideString;
begin
DefaultDraw := False;
xRect := Node.DisplayRect(true);
xText := Node.Text;
ExtTextOutW(TreeViewTest.Canvas.Handle, xRect.Left,
xRect.Top, TreeViewTest.Canvas.TextFlags, nil,
PWideChar(xText), Length(xText), nil);
end;
由于界面需要,要重新调整文字位置的,请各位帮我解决这个问题,谢谢!!