shomessage如何置前 在运行时间长的代码时,通常用‘showmessage('执行完毕')’,来显示已经执行完,但如果在运行过程中点击了其它地方,程序运行完毕后showmessage框就跑到后面去了,有没有办法将showmessage始终置前。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那你弄个from 代替showmessage框体的提示功能 程序运行完毕的时候把这个from创建并ShowModal一下 这个窗体应该是始终直前的 呵呵 点击其他地方,还是在你自己的程序其他地方点击,还是说点击你的程序以外的地方。前一种情况应该不会出现你说的问题。后一种情况的话,可以考虑自己用个Form代替ShowMessage(),将这个窗体始终置前就可以了。Form1.Formstyle := fsStayOnTop 或是setwindowpos(form1.Handle,hwnd_topmost,0,0,0,0,swp_nomove or swp_nosize); Application.MessageBox('没有任何数据可以保存!','提示', MB_OK+MB_ICONINFORMATION+MB_APPLMODAL); 实用API函数MessageBox可以实现它是模式窗体,一直置顶的。 显示SHOMWMESSAGE(最好用MESSAGEBOX)的Form设为showmodal, 这样就点不到其它地方了. 自己做个好看点的对话框showModal也不错啊,或者用MessageBox。 showmessage好像我也遇到过这个情况,没有理会 用MESSAGEBOX要用HANDLE,麻烦,如果不是本窗体的,还是可以点击后面的窗体的,所以唯一解决方法是: Application.MessageBox(PChar(AText), '信息提示', MB_OK + MB_ICONINFORMATION + MB_DEFBUTTON2 + MB_TOPMOST); 这个问题应该算是showmessage的bug吧,一直也不见改进 自己做个message窗体, 属性设为Ontop 除了调试,基本不用Showmessage 用 MessageBox(Handle, PChar(StrError), '提示', MB_OK + MB_ICONQUESTION)这样就不会跑后面了 无人看守的情况下,还是用memo显示,并写入LOG 日志文件吧,谁没事盯着系统点对话框 Form1.Formstyle := fsStayOnTop Application.MessageBox(PAnsiChar('Welcome'),'北京欢迎你',MB_OK + MB_ICONINFORMATION + MB_SYSTEMMODAL);这个完全OK 。 Application.MessageBox(PChar('执行完毕'),'提示',MB_OK+MB_ICONINFORMATION+MB_Topmost); 做了两个FORM,放入一个工程,但是run了一下很多错误 进销存设计问题 DevExpress 有像TOpenDialog那样的控件吗? D7+CR11 如何打包发布 F7单步执行会出问题 如何实现windows xp操作系统下按钮的样式?使用delphi6.0 如何删除用户,菜鸟提问 局域网里的机器和外面通讯时候的问题。。。 有关2000下CTRL+DEL+ALT的屏蔽 请问如何开发一个关于格斗游戏的快捷键。 急!急! 做delphi有多少人月薪破万啦,来报个名给我点继续做delphi的理由吧
那你弄个from 代替showmessage框体的提示功能 程序运行完毕的时候把这个from创建并ShowModal一下 这个窗体应该是始终直前的 呵呵
前一种情况应该不会出现你说的问题。
后一种情况的话,可以考虑自己用个Form代替ShowMessage(),将这个窗体始终置前就可以了。
Form1.Formstyle := fsStayOnTop
或是
setwindowpos(form1.Handle,hwnd_topmost,0,0,0,0,swp_nomove or swp_nosize);
MB_OK+MB_ICONINFORMATION+MB_APPLMODAL);
这个完全OK 。