痒痒 发表于 2010-1-11 15:03:22

怎么能创建一个每次启动都在右下角的窗口?

本帖最后由 痒痒 于 2010-1-11 16:13 编辑

谢谢afan!
#include <GUIConstantsEx.au3>

GUICreate("你好,世界", 200, 100,@DesktopWidth-200,@DesktopHeight-100)

GUICtrlCreateLabel("你好,世界! ", 30, 10)

GUICtrlCreateButton("确定", 70, 50, 60)

GUISetState(@SW_SHOW)

Sleep(5000)@DesktopHeight-100,如果把这修改为@DesktopHeight-165.在我的电脑就刚好可以,但如果任务栏是两行显示时,这个界面又被盖住了。

顽固不化 发表于 2010-1-11 16:02:56

现在就是获取任务栏状态问题(含形状,显示位置等)。但不知道如何获取。

afan 发表于 2010-1-11 16:04:02

#include <GUIConstantsEx.au3>
$pos = WinGetPos("")
GUICreate("你好,世界", 200, 100, @DesktopWidth - 200 - 4, @DesktopHeight - 100 - $pos - 32)
GUICtrlCreateLabel("你好,世界! ", 30, 10)
GUICtrlCreateButton("确定", 70, 50, 60)
GUISetState(@SW_SHOW)
Sleep(5000)

kn007 发表于 2010-1-11 16:08:47

用楼上的没错。。。
另外楼上的签名signature挺好的

顽固不化 发表于 2010-1-11 16:27:10


afan 发表于 2010-1-11 16:04 http://www.autoitx.com/images/common/back.gif

给你修改了一下,适应任务栏在右边情况#include <GUIConstantsEx.au3>
$pos = WinGetPos("")
;MsgBox(0,0,$pos)
;Exit
If $pos=0 And $pos=0 Then
        $YPos=0
        $XPos=0
ElseIf $pos=0 Then
        $YPos=$pos
        $XPos=0
ElseIf $pos=0 And $pos+$pos=@DesktopWidth Then
        $XPos=$pos
        $YPos=0
EndIf
GUICreate("你好,世界", 200, 100, @DesktopWidth - 200-$XPos - 4, @DesktopHeight - 100 - $YPos - 32)
GUICtrlCreateLabel("你好,世界! ", 30, 10)
GUICtrlCreateButton("确定", 70, 50, 60)
GUISetState(@SW_SHOW)
Sleep(2000)

痒痒 发表于 2010-1-11 16:35:08


afan 发表于 2010-1-11 16:04 http://www.autoitx.com/images/common/back.gif

麻烦问下,@DesktopHeight - 100 - $pos - 32中的-32是从哪里来的。

afan 发表于 2010-1-11 16:36:05

回复 6# 痒痒


    标题栏高度~

顽固不化 发表于 2010-1-11 16:42:11

常数4和32是标题栏高宽,但这些值会与系统使用的主题有很大关系,具体计算也是一个问题的。记得论坛上有人曾经探讨过。

afan 发表于 2010-1-11 16:42:59

本帖最后由 afan 于 2010-1-11 16:44 编辑

回复 8# 顽固不化


    没错~
4 和 32-30=2 就算是容差吧……

痒痒 发表于 2010-1-11 16:45:17

谢谢两位达人的解答!受益良多!

SGTAO 发表于 2010-1-22 19:46:52

受益良多学习了

lxz 发表于 2010-1-22 20:02:22

学习了......

xgdjkk 发表于 2013-10-12 18:34:30

很好的帖子,做个记号。目前基本实现右下角弹出,虽然任务栏可能在其他地方,但已经够用了。

netsmu 发表于 2014-1-20 11:09:18

不错,已经在使用了。
页: [1]
查看完整版本: 怎么能创建一个每次启动都在右下角的窗口?