您可能更喜欢将程式中的对话方块与资料结构相联系,该资料结构含有对话方块可以改变的所有变数。您将在typedef叙述中定义这些结构。例如,在ABOUT2中,可以定义与「About」方块相联系的结构:
在WndProc中,您可以依据此结构来定义并初始化一个静态变数:
这是关键:DialogBoxParam的最後一个参数是作为WM_INITDIALOG讯息中的lParam传递给对话方块程序的。
对话方块程序有两个ABOUTBOX_DATA结构型态的静态变数(一个结构和一个指向结构的指标):
在AboutDlgProc中,此定义代替了iColor和iFigure的定义。在WM_INITDIALOG讯息的开始部分,对话方块程序根据lParam设定了这两个变数的值: