在學習《windows程式設計》過程中,經常會遇到問題,每次懷疑書上寫的有問題,當然,每次都會證明是自己的問題,下面是一次建立視窗失敗的問題查詢。
之前是一直在模板上改需要自定義的部分引數,但是當自己手動建立的時候,問題總是一堆一堆的:
1、沒有註冊類就直接建立,createwindow會返回空值;
2、在視窗處理程式中switch message,一般來說攔截需要的資訊就行了,不需要的就直接不管了。然而想當然的再default中break後,建立總是失敗,需要返回預設的defwindowproc處理程式才行。
3、視窗型別如果不合適,比如沒有border會不容易看出來。
果然得細心才行,看起來沒什麼用的東西總會毀了所有。。。
導致CreateWindow建立視窗失敗的一種原因
createwindow返回null,getlasterror 返回0 經過網上蒐集資料和單步除錯發現問題 在程式呼叫createwindow函式之前會首先呼叫wndproc具體原因暫時不詳,我的程式這裡好像是會呼叫三次wndproc,可能是系統傳送的訊息 然後會呼叫createwindow,所以當...
CreateWindow 建立普通的視窗
1 函式原型 1 hwnd createwindow 2 lpctstr lpclassname,pointer to register class name 3 lpctstr lpwindowname,pointer to window name 4 dword dwstyle,window s...
CreateWindow函式返回NULL
在學習windows開發期間,遇到的問題。寫了乙個gui專案,執行之後,沒有反應。除錯後發現,createwindow函式返回null。大概的 如下 include main.h include includechar szfilepath max path char szresult 4096 c...