请进,高分!请教你问题 各位好: 我现在有一个和棘手的问题。我建了个公用模板的窗体。不能有有窗体标题, 而其他的窗体必须继承在这个窗体上。我样来拖动这个窗体,而且其他继承的窗体也能拖动。谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 通过消息的转换可以实现移动无标题栏窗口。当鼠标移动、按下或释放时,会产生WM_NCHITTEST消息,当检测到鼠标在窗体中按下的消息(消息值为htClient)时,将鼠标在标题栏上按下的消息(消息值为htCaption)发出,这样就可以拖动窗体了。在Form1的private部分声明过程和WM_NCHITTEST消息:type TForm1 = class(TForm) private { Private declarations } procedure WMNChitTest(var Msg:TWMNChitTest) ; Message WM_NCHITTEST; . . .procedure TForm1.WMNChitTest(var Msg: TWMNChitTest) ;begin inherited; if Msg.Result = htClient then Msg.Result:= htCaption; // 消息转换end; 我这样做过,但只能拖动一个form而下面的FORM不能操作。还有其他的办法吗? 1 方法一 你参考forms 单元下的function TCustomForm.ShowModal: Integer;函数可以实现你要的效果2。你用第三方控件 ,比如用fcimageform 她是Woll2Woll公司的产品窗口可以只有客户区,并且可以拖动,你直接用showmodal 应该是可以的 你可以尝试一下 当这个窗口show的时候,用循环的方法屏蔽其它窗口的响应消息(好像showmoda就是这么搞的),当关闭的时候在解除屏蔽 是这样的,我的主窗体上采用了,Image作为按钮;采用你上面的方法,只能拖动当前窗体,而主窗体上一切组件不能用。why? 讨论开发超级代理上网程序, 请高手指点. 怎么样在使用ACCESS的ADO连接时,用别名而不用数据库 如何截取IE发送请求的消息 寻找合作伙伴开发CAD图档管理、项目管理 WindowsMedia 控件 连接sql server 的问题 一个DBGrid的问题?UP有分 讨论:需要避免使用Sleep过程吗? 请问:后台C++,前台DELPHI? 异常事件怎么没有被捕获?处理 关于电信计费业务研 线程挂不起来,求助!在线!
生WM_NCHITTEST消息,当检测到鼠标在窗体中按下的消息(消息值为htClient)时
,将鼠标在标题栏上按下的消息(消息值为htCaption)发出,这样就可以拖动窗体
了。在Form1的private部分声明过程和WM_NCHITTEST消息:type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMNChitTest(var Msg:TWMNChitTest) ;
Message WM_NCHITTEST;
. . .procedure TForm1.WMNChitTest(var Msg: TWMNChitTest) ;
begin
inherited;
if Msg.Result = htClient then
Msg.Result:= htCaption; // 消息转换
end;
function TCustomForm.ShowModal: Integer;函数
可以实现你要的效果
2。你用第三方控件 ,比如用fcimageform 她是Woll2Woll公司的产品
窗口可以只有客户区,并且可以拖动,你直接用showmodal 应该是可以的
当这个窗口show的时候,用循环的方法屏蔽其它窗口的响应消息(好像showmoda就是这么搞的),当关闭的时候在解除屏蔽
拖动当前窗体,而主窗体上一切组件不能用。why?