簡體   English   中英

可以在 Win32 中超類對話框嗎?

[英]Possible to Superclass a Dialog Box in Win32?

我正在為一個項目使用原始的 Win32 和 C++。 據我了解,我可以通過檢索類信息、替換過程、然后將其注冊為新類並在創建新窗口時使用它來超類 Windows 控件。 子類化是通過在創建窗口后替換窗口的過程來完成的。 超類的優點是您可以在CreateWindow()返回之前處理消息。

我想看看是否可以對使用CreateDialog()創建的對話框進行超類化,因為我想為對話框布局使用資源文件。 問題是我不知道在創建對話框時如何提供超類。 甚至有可能嗎? 知道 MFC 如何處理這個嗎?

如果使用擴展對話框模板來創建對話框,則可以指定自定義窗口類作為DLGTEMPLATEEX定義的一部分。

對話管理器將照常創建和布局您的對話,並為任何對話消息調用您的窗口過程。 您可以使用DefDlgProc函數為您不想自己處理的任何對話消息獲取默認處理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM