機房收費和諧的子窗體

2021-07-04 13:03:39 字數 2659 閱讀 1196

問題引入:

機房收費系統中在主窗體新增picture可以比較方便的將我們需要的控制項新增到窗體上,但是這也導致了一下問題,因為是」相同的乙個級別「,所以耍大牌的picture將其他的子窗體完完全全的擋在了後面

遇到問題、解決問題

一、比較受歡迎的方法是

1、引用api函式

private declare function getusername lib "advapi32.dll" alias "getusernamea" (byval lpbuffer as string, nsize as long) as long
2、在要開啟窗體的**處新增

比如要開啟frmabout

frmabout.show

setparent frmabout.hwnd, frmmain.picture1.hwnd

3、在開啟窗體的activate中

dim a as form  

for each a in forms

if a.name <> mdiform1.name and a.name <> me.name then

a.windowstate = 1

end if

next

或者在deactivate中

if me.windowstate <> 1 then  

me.windowstate = 1

end if

vbnormal 0

正常 vbminimized 1 最小化

vbmaximized 2 最大化

另一種:窗體自動最小化

private declare function getforegroundwindow lib "user32" () as long  

private sub form1_load()

timer1.interval = 100

end sub

private sub timer1_timer()

dim frmcurr as form

if getforegroundwindow <> me.hwnd then '判斷獲取的控制代碼與本窗體的控制代碼是否一致

frmcurr.windowstate = 1 '如果不一致就最小化

end if

end sub

二、1

、載入乙個主窗體

mdifrom

,但是只要它的外殼,另外建乙個普通窗體如

from1

,將該窗體『內嵌

』主窗體中2、

主窗體show

的時候該

from1

跟著show

3、其大小跟父窗體的大小相同

4、from1窗體的boderstyle屬性設定為 0-none 5

、利用父窗體的resize

事件(簡單舉例)

:當乙個物件第一次顯示或當乙個物件的視窗狀態改變時該事件發生

**:

private subform_load()

text1.text =""

end sub

private subform_resize()

text1.move 0, 0, scalewidth, scaleheight

end sub

本來面目:

效果:

以上可以實現這兩個窗體完美結合了,這帶來好處也有壞處,如果一不小心點到

from1

,那麼其他正在用的窗體就會被隱藏在

from1

後,而from1

是鋪滿整個父窗體的,也就是說被隱藏的窗體是不太可能被找到的,因此我們引進了

zorder

方法(另乙個)

form1.zorder 1

呵呵呵呵呵呵呵

收費中為了讓from1位於最底層,需要在每乙個可能成為活動窗體的activate事件中新增

form1.zorder  1

如果有錯誤,歡迎交流

機房收費之充值窗體

自學生系統之後的另乙個系統,不過這次沒有原始碼,需要自己去慢慢摸索,不能著急,在此期間也出了好多問題,下面來看看我弄了一下午的充值窗體吧 充值窗體功能 為卡充值金額,並對最新餘額進行更新。步驟 1 輸入卡號後,判斷該卡是否未註冊或者已登出 通過學生資訊表查詢 有個提示。2 輸入充值金額後判斷該金額是...

機房收費系統結賬窗體

結賬,概括的來說,就讓管理員知道每天機房的金錢收支。詳細的說是把每個操作員一天收支明細列出來讓管理員一目了然。下面我們先來看看結賬的介面,如下圖 經過分析,我們可知道,這就是管理員看操作員一天的工作明細,即售卡,充值,退卡的情況。1 購卡 就是在student info表總查詢沒有結賬的那些新註冊的...

機房收費系統系列二 MDI子窗體和主窗體顯示

在機房收費系統中,frmmain作為mdi的主窗體,想要在mdi主窗體上新增控制項,picture控制項是最好的伴侶,但是在新增了picture控制項以後,問題也就隨之而來了。點選子窗體的時候,子窗體被 吃掉 了,怎麼樣讓他顯示出來呢?想要解決picture控制項擋住子窗體的,這裡就用到了api函式...