kk_lee69 发表于 2012-9-1 00:16:25

系统开发上 预到的多层GUI窗口显示问题….不知道是否有办法解决

本帖最后由 kk_lee69 于 2012-9-1 00:17 编辑

經常幫朋友寫些小程式..... 但是都會遇到同樣的問題.... 這些問題 很難用說的說清楚 所以得用圖片表示過程 .....
我通常 會使用....

        Case $Serch
                GuiSetState(@SW_DISABLE,$WinSUB) ; 禁用視窗,以防用戶作出其他更改
                .
                .
                .
                WinActivate($WinSUB,"")
                GuiSetState(@SW_ENABLE,$WinSUB) ; 使窗口重新可用


這樣的方法來處理窗口.......每次都會遇到下面的問題.....

當使用者在 WORD畫面工作的時候 執行了我的程式......會出現下面的狀況



然後 使用者選了一個選項....叫出 第二個GUI窗口....如下圖



但是 當輸入錯誤 用MSGBOX提示的時候 通常會變成下面的圖案....第一層跟第二層 窗口都不見了 只剩下 MsgBox 而已



等全部 msgbox 跑完後 會回到 第二層的畫面但是第一層的畫面 不見了....因為失去焦點 被隱藏到WORD下面的



這樣的問題 是因為我的寫法不好嗎???還是 本身系統就會這樣.....有辦法解決嗎

我希望我的系統的所有畫面都可以綁在一起 永遠再最上面一層

lxzan 发表于 2012-9-1 15:24:47

台湾还是香港人吧?

along2008 发表于 2012-9-2 14:03:06

有点看不明白

along2008 发表于 2012-9-2 15:33:09

这是系统编程还是一个小软件的一部分?

kk_lee69 发表于 2012-9-2 18:05:30

自己寫的一個小軟件

xiaowo 发表于 2012-9-3 09:31:58

我记得我解决过这个问题,搜搜看源码,找到了发给LZ

xiaowo 发表于 2012-9-3 09:36:01

MsgBox(8192+262144, "Xiaowo U", "")

83265358 发表于 2012-9-3 20:50:20

本帖最后由 83265358 于 2012-9-3 20:52 编辑

在关闭"子窗体"时加一句激活和显示主窗体的语句吧我没试过 不知道是不是你想要的效果!

83265358 发表于 2012-9-3 20:50:43

本帖最后由 83265358 于 2012-9-3 20:53 编辑

重复了,IE9不好使...

kk_lee69 发表于 2012-9-3 21:19:20

感謝各位的回覆 我測試看看 謝啦

andyloving 发表于 2012-9-4 16:08:51

设置父子窗口关系,然后再使用GUISetState(65, $Form_main)和GUISetState(64, $Form_main) 应该能解决,我也遇到过这样的问题。

kk_lee69 发表于 2012-9-4 16:39:38

回复 11# andyloving

大哥請問有打錯嗎??

GUISetState(65, $Form_main)
GUISetState(64, $Form_main)

只差 65 跟64又對同一個表單這樣的意義是.....??

請教 $Form_main是父還是 子那麼 65 跟64又是甚麼意思呢??

andyloving 发表于 2012-9-4 17:47:33

回复 12# kk_lee69


    $Form_main是父亲,我是从我的项目代码里拷出来的代码。65为将父亲disable,64为enable。

狼兄 发表于 2012-9-7 21:48:10

我表示我现在看不懂,还在学习阶段中。。。。努力!
页: [1]
查看完整版本: 系统开发上 预到的多层GUI窗口显示问题….不知道是否有办法解决