1. 程式人生 > >關於子窗體開啟被父窗體內的圖片框遮擋而不顯示的問題

關於子窗體開啟被父窗體內的圖片框遮擋而不顯示的問題

今天遇到這樣個問題。我在主窗體下設定的子窗體沒法顯示,其實是被主窗體內的圖片框遮擋。那麼問題來了。。我該怎麼讓它顯示出來呢?

問了同學,讓我百度自己摸索。哈哈,還好機智的我解決了問題。

在vb程式中呼叫api函式,在“外界程式”中---“api瀏覽器”---檔案---文字檔案---“WIN32API”   然後如下圖


輸入setparent     新增,然後點插入,把程式碼插入到模組中。

然後去主窗體程式碼視窗中找到顯示子窗體的程式碼

這樣寫:

Private Sub About_Click()                                                    
    frAbout.Show                                
    Call SetParent(frAbout.hWnd, frMain.hWnd)
End Sub

(格式為:SetParent  想要呼叫的子窗體名稱 .hWnd , MDI窗體名稱.hWnd)

程式碼好了你去試試,子窗體可以打開了,但是,出現如下問題:

紅色框裡的是 我們要開啟的窗體。。。。必須手動調大小才能正常顯示,,,

這樣可不行啊,,,這個時候就需要去子窗體屬性框設定了。。

borderstyle  =  1

windowstate  =  0

如圖正常狀態:


然後就可以了。。去試試吧。

在這其中,我才弄明白子窗體是主窗體和父窗體下開啟的小窗體,父窗體的特點是,關閉父窗體,其子窗體跟著全部關閉,而主窗體,你設定誰是主窗體誰就是。。

如有不足,歡迎評論補充!