DLGTEMPL Sample: Creates Dialog Templates Dynamically
The DLGTEMPL sample shows how to create a dialog template dynamically and use the template with CDialog::InitModalIndirect. The sample displays a dialog box for selecting the height, width, and other attributes of a button, static text, and multiline edit control, then displays the resulting dialog box using templates in memory.
The bulk of the code for dynamically creating a dialog is found in the CMyDialogTemplate::DemoIt member function. DLGTEMPL does not prevent you from entering values that lay one control over another, nor does it prevent you from positioning a control beyond the boundary of the dialog. You can experiment with DLGTEMPL to see the effects of resizing and overlaying controls.
This sample code is provided to illustrate a concept and should not be used in applications or Web sites, as it may not illustrate the safest coding practices. Microsoft assumes no liability for incidental or consequential damages should the sample code be used for purposes other than as intended.
To get samples and instructions for installing them:
On the Visual Studio Help menu, click Samples.
For more information, see Visual Studio Samples.
The most recent version and complete list of samples is available online from the Visual Studio 2008 Samples page.
You can also locate samples on your computer's hard disk. By default, samples and a Readme file are copied into a folder under \Program Files\Visual Studio 9.0\Samples\. For Express editions of Visual Studio, all samples are located online.
To build and run the DLGTEMPL sample
Open the solution dlgtempl.sln.
On the Build menu, click Build.
On the Debug menu, click Start Without Debugging.
When you run DLGTEMPL, it displays a dialog box in which you select Button, Edit, or Text. Enter the desired values for height, width, and X and Y coordinates for placement on the resulting dialog box, and a caption to be displayed. Click Show Dialog to display a dynamically created dialog box based on the values you enter. Press ESCAPE to close the dialog box.