在网上找了个xe下触控例子,编译的时候提示错误,请大家帮忙看看,多谢了。
procedure TMyD2DPanel.WMSize(var Message: TWMSize);
begin
if assigned(Canvas) then
(Canvas.RenderTarget as ID2D1HwndRenderTarget).Resize(D2D1SizeU(message.Width, message.Height));
end;
提示错误信息:
[dcc32 Error] frmPicStack.pas(404): E2197 Constant object cannot be passed as var parameter好像是不能用变量来作为参数,不知道这个怎么改?触控图片2d
procedure TMyD2DPanel.WMSize(var Message: TWMSize);
begin
if assigned(Canvas) then
(Canvas.RenderTarget as ID2D1HwndRenderTarget).Resize(D2D1SizeU(message.Width, message.Height));
end;
提示错误信息:
[dcc32 Error] frmPicStack.pas(404): E2197 Constant object cannot be passed as var parameter好像是不能用变量来作为参数,不知道这个怎么改?触控图片2d
var
ASize: D2D_SIZE_U;
begin
if assigned(Canvas) then
begin
ASize := D2D1SizeU(Message.Width, Message.Height);
(Canvas.RenderTarget as ID2D1HwndRenderTarget).Resize(ASize);
end;
end;
procedure TMyD2DPanel.WMSize(var Message: TWMSize);
var
v:D2D1_SIZE_U;
begin
if assigned(Canvas) then
begin
v.width:=message.Width;
v.height:=message.Height;
(Canvas.RenderTarget as ID2D1HwndRenderTarget).Resize(v);
end;
end;
用捕获消息也是一种办法