1. 首页>百科大全 > 百科

怎么把窗口一直在最上层

作者:张悦华
2020-05-13
百科

1. 如何让一个窗口总是处于各窗口的最上层

代码如下:

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _

ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Const HWND_TOPMOST = -1

Private Sub Form_Load()

SetWindowPos Me.hwnd,HWND_TOPMOST,Me.Left/Screen.TwipsPerPixelX, _

Me.TopScreen.TwipsPerPixelY,Me.WidthScreen.TwipsPerPixelX, _

Form1.Height Screen.TwipsPerPixelY, 0

End Sub

2. 如何让一个窗口总是处于各窗口的最上层

代码如下: Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _ ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Const HWND_TOPMOST = -1 Private Sub Form_Load() SetWindowPos Me.hwnd,HWND_TOPMOST,Me.Left/Screen.TwipsPerPixelX, _ Me.TopScreen.TwipsPerPixelY,Me.WidthScreen.TwipsPerPixelX, _ Form1.Height Screen.TwipsPerPixelY, 0 End Sub。

3. 怎么做到让程序窗口始终显示在桌面最上层,即始终掩盖在其他打开的

今天我尝试了一下,在窗体打开的时候开一个线程,然后这个线程里面一直设置TopMast=true就可以解决你的问题.

Thread mustTop = new Thread(() =>

{

while (!this.IsDisposed)//如果程序没有关闭,他就一直在上面.

{

this.Invoke(new Action(() =>

{

this.TopMost = true;

}));

Thread.Sleep(1000);//可以隔一段时间设置一次

}

});

mustTop.Start();

4. 非主窗体如何保持总在最上层

转贴:我用了SetWindowPos函数,窗体是启动的主窗体时,就可以。

但是如果窗体是在另一个窗体中通过form.show方法显示出来时,怎么也不行了。原因是什么呢?/////////////////////////方法一:先setforegroundwindow(HWND);然后再setwindowpos(form2.Handle,HWND_TOPmost,10,10,200,300,SWP_SHOWWINDOW );////////////////////////方法二:关键技术是重载Form的CreateParams方法{form2 code}public procedure CreateParams(Var Params:TCreateParams);override;uses unit1;procedure tform2.CreateParams(var Params:TCreateParams);begin inherited; With Params do begin wndParent:=GetDesktopwindow; ExStyle:=ExStyle or WS_EX_TOPMOST; end;end;procedure TForm2.FormClose(Sender :TObject;var Action:TCloseAction);begin Form1.show; ShowWindow(Application.handle,sw_show);end;{Form1}uses unit2;procedure TForm1.Button1Click(Sender:TObject);begin with tform2.create(self) do show; hide; {Hide Form1} ShowWindow(Application.handle,sw_hide); {Hide Application}end;。

推荐阅读
  • 努比亚z9max手机音乐效验

    该机拥有HIFI级音乐芯片,音乐效果不凡。具体体现在:1.音量调节,正常听音乐中高低音都是一个音量,而杜比音效能动态扩大某个音量。比如放打鼓声,杜比会及时提高低音加强鼓声。2.加强音域,杜比音效有开阔、集中、…

    百科 2024-09-20
  • 是atChristmas还是inChristmas

    此处该用“on”。在圣诞节正确表达应为 “on Christmas ”。有具体日期的,比如知道几月几日的都用“on” ;不知道日期,但知道年份和月份的用“in” ,知道具体时间,比如几点几分用“at”。…

    百科 2024-09-20
  • 个体工商户应交纳什么税

    纳税标准根据国家税务总局《个体工商户定期定额征收管理办法》文件精神 ,定期定额征收方式适用的税种及税率如下:1、根据《中华人民共和国增值税暂行条例》规定,自2009年1月1日起,小规模纳税人增值税征收率为3%…

    百科 2024-09-20
  • 材料成本差异率为负数是什么意思

    材料成本差异额,是指材料的实际成本和计划成本之间的差额。差异率负数表示节约差异,即实际成本比计划成本小。正数表示超支差异,即实际成本比计划成本大。…

    百科 2024-09-20
  • 塞翁失马焉知非福是什么意思

    比喻一时虽然受到损失,反而因此能得到好处。也指坏事在一定条件下可变为好事,反之亦然。形容人的心态,一定要乐观向上,任何事情都有二面性,不好的一面,有可能向好的一面转化。塞翁失马,焉知非福出自《 淮南子…

    百科 2024-09-20