关于一个sendmessage api的使用。(50分)

  • 主题发起人 主题发起人 wuan
  • 开始时间 开始时间
W

wuan

Unregistered / Unconfirmed
GUEST, unregistred user!
&nbsp; 我想用sendmessage api来修改窗体的标题:<br>&nbsp; 在vb中:sendmessage(hwnd,wm_settex,1,buff) 其中buff为要修改的string的缓冲区。<br>&nbsp; 而在delphi中sendmessage(handle,wm_settex,1,buff)时要求buff必须为integer,请问要变得标题字符串应怎样传递呢?
 
var<br>&nbsp; sCaption:String;<br>begin<br>&nbsp; sCaption:='Change';<br>&nbsp; SendMessage(Handle,WM_SETTEXT,0,Integer(PChar(sCaption)));<br>end;
 
多看帮助 C中的LPCTSTR对应Delphi中的PChar,以Integer的形式传送指针<br><br>An application sends a WM_SETTEXT message to set the text of a window. <br><br>WM_SETTEXT &nbsp;<br>wParam = 0; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // not used; must be zero <br>lParam = (LPARAM)(LPCTSTR)lpsz; // address of window-text string <br><br>Parameters<br>lpsz<br>Value of lParam. Points to a null-terminated string that is the window text.
 
ysai说的方法就可以了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
916
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部