最近有幸,又摸到了好久沒摸的 visual basic 6.0,
vb6.0 耶,記得大學的時候,上小賴老師的程式設計課程就是用vb6.0阿,超遙遠的!
這幾天都在寫 visual basic 6.0 的東西,有些問題真的頗困擾我,
讓mdi child form跑到最上面就是一個困擾我的問題點,找了一堆網站都找不到我想要的答案,
如果是vb.net,隨便丟一個 method 就可以解決了,vb6.0 就只能透過 api 了,而我對 api 又是超級不熟。
沒想到就在剛剛,讓我找到了,maybe 以後還是會用到,還是記錄下來吧!
1. 首先在 mdi parent form 的 code 最上面宣告的地方貼上:
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
2. 接著開一個 module 貼上:
Public Const HWND_TOP = 0 '非永久置頂 Public Const HWND_BOTTOM = 1 '最底層 Public Const HWND_TOPMOST = -1 '永久性置頂 Public Const HWND_NOTOPMOST = -2 '解除永久性置頂 Public Const SWP_NOMOVE = &H2 '不必設定表單位置 Public Const SWP_NOSIZE = &H1 '不必設定表單大小
3. 接著只要在選單的地方加上這段 code:
SetWindowPos Form2.hWnd, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE + SWP_NOSIZE
4. 完成。
以上資料參考程式設計俱樂部:willy69wu31804ac大大的說明
http://www.programmer-club.com.tw/ShowSameTitleN/vb/27697.html
全站熱搜
留言列表