Бывалый

Профиль
Группа: Awaiting Authorisation
Сообщений: 207
Регистрация: 13.9.2006
Репутация: нет Всего: 1
|
Эрнест, так что-ли?Но у меня теперь по кнопке вызова PropertySheet IDC_BUTTON2 ошибка времени исполнения. | Код | #include <windows.h> #include <windowsx.h> #include <commctrl.h> #include "resource.h" #include <shlwapi.h>
LRESULT CALLBACK MyWndProc (HWND, UINT, WPARAM, LPARAM) ; BOOL CALLBACK DlgProc1 (HWND, UINT, WPARAM, LPARAM) ; BOOL CALLBACK DlgProc2 (HWND, UINT, WPARAM, LPARAM) ; BOOL CALLBACK DlgProc3 (HWND, UINT, WPARAM, LPARAM) ;
HINSTANCE hInst;
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static char szAppName[] = "My" ; HWND hwnd ; MSG msg ; WNDCLASSEX wndclass ;
wndclass.cbSize = sizeof (wndclass) ; wndclass.style = CS_HREDRAW | CS_VREDRAW; wndclass.lpfnWndProc = (WNDPROC)MyWndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = DLGWINDOWEXTRA ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (hInstance, MAKEINTRESOURCE(IDI_ICON1)) ; wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ; wndclass.hbrBackground = (HBRUSH) (COLOR_WINDOW) ; wndclass.lpszMenuName = NULL ; wndclass.lpszClassName = szAppName ; wndclass.hIconSm = LoadIcon (hInstance, MAKEINTRESOURCE(IDI_ICON1)) ;
RegisterClassEx (&wndclass) ;
hwnd=CreateDialog(hInstance, "My", 0, (DLGPROC)MyWndProc); ShowWindow (hwnd, iCmdShow) ; UpdateWindow(hwnd); InitCommonControls(); hInst=hInstance;
while (GetMessage (&msg, NULL, 0, 0)) { TranslateMessage (&msg) ; DispatchMessage (&msg) ; } return msg.wParam ; }
LRESULT CALLBACK MyWndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam) {
// Ìàññèâ îïèñàíèé ñòðàíèö áëîêíîòà PROPSHEETPAGE psheetPage[3];
// Çàãîëîâîê áëîêíîòà PROPSHEETHEADER psheetHeader;
// Èäåíòèôèêàòîðû ñòðàíèö áëîêíîòà HPROPSHEETPAGE hPage[3];
switch (iMsg) { case WM_INITDIALOG:
break;
case WM_DESTROY : PostQuitMessage (0) ; break; case WM_COMMAND:
if (LOWORD (wParam) == IDC_BUTTON1) { PostQuitMessage (0) ; return 0; break; }
if (LOWORD (wParam) == IDC_BUTTON2) { ZeroMemory(&psheetPage, 3*sizeof(PROPSHEETPAGE)); // Èíèöèàëèçèðóåì ñòðàíèöû áëîêíîòà psheetPage[0].dwSize = sizeof(PROPSHEETPAGE); psheetPage[0].hInstance = hInst; //psheetPage[0].pszIcon = MAKEINTRESOURCE(IDI_EFFECTS); //psheetPage[0].dwFlags = PSP_USETITLE | PSP_USEICONID; psheetPage[0].dwFlags = PSP_USETITLE; psheetPage[0].pszTemplate = MAKEINTRESOURCE(IDD_PROPPAGE_SMALL); psheetPage[0].pfnDlgProc = DlgProc1; psheetPage[0].pszTitle = "Set Effects"; psheetPage[0].lParam = 0;
// Äîáàâëÿåì ñòðàíèöó â áëîêíîò, ñîõðàíÿÿ åå // èäåíòèôèêàòîð â ìàññèâå hPage hPage[0] = CreatePropertySheetPage(&psheetPage[0]);
psheetPage[1].dwSize = sizeof(PROPSHEETPAGE); psheetPage[1].hInstance = hInst; //psheetPage[1].pszIcon = MAKEINTRESOURCE(IDI_TAB); //psheetPage[1].dwFlags = PSP_USETITLE | PSP_USEICONID; psheetPage[1].dwFlags = PSP_USETITLE; psheetPage[1].pszTemplate = MAKEINTRESOURCE(IDD_PROPPAGE_SMALL1); psheetPage[1].pfnDlgProc = DlgProc2; psheetPage[1].pszTitle = "Using Tabs"; psheetPage[1].lParam = 0; hPage[1] = CreatePropertySheetPage(&psheetPage[1]);
psheetPage[2].dwSize = sizeof(PROPSHEETPAGE); psheetPage[2].hInstance = hInst; //psheetPage[2].pszIcon = MAKEINTRESOURCE(IDI_KEYWORD); //psheetPage[2].dwFlags = PSP_USETITLE | PSP_USEICONID; psheetPage[2].dwFlags = PSP_USETITLE; psheetPage[2].pszTemplate = MAKEINTRESOURCE(IDD_PROPPAGE_SMALL2); psheetPage[2].pfnDlgProc = DlgProc3; psheetPage[2].pszTitle = "Keyword"; psheetPage[2].lParam = 0; hPage[2] = CreatePropertySheetPage(&psheetPage[2]);
HWND hTabControl; hTabControl=GetDlgItem(hwnd,IDC_TAB1); // Èíèöèàëèçèðóåì çàãîëîâîê áëîêíîòà
psheetHeader.dwSize = sizeof(PROPSHEETHEADER); psheetHeader.hInstance = hInst; //psheetHeader.pszIcon = MAKEINTRESOURCE(IDI_APPICONSM); //psheetHeader.dwFlags = PSH_USEICONID; psheetHeader.dwFlags = PSH_PROPSHEETPAGE; psheetHeader.hwndParent = hTabControl; psheetHeader.nStartPage=0; psheetHeader.pszCaption = "Property Sheet Sample"; psheetHeader.nPages = sizeof(psheetPage) / sizeof(PROPSHEETPAGE); psheetHeader.phpage = (HPROPSHEETPAGE FAR *)&hPage[0]; //psheetHeader.phpage = &hPage[0];
// Ñîçäàåì è îòîáðàæàåì áëîêíîò PropertySheet(&psheetHeader); break; }
} return DefWindowProc (hwnd, iMsg, wParam, lParam) ; }
BOOL CALLBACK DlgProc1 (HWND hDlg, UINT iMsg, WPARAM wParam, LPARAM lParam) {
switch (iMsg) { case WM_INITDIALOG :
return TRUE ;
case WM_COMMAND : switch (LOWORD (wParam)) {
} break ;
} return FALSE ; }
BOOL CALLBACK DlgProc2 (HWND hDlg, UINT iMsg, WPARAM wParam, LPARAM lParam) {
switch (iMsg) { case WM_INITDIALOG :
return TRUE ;
case WM_COMMAND : switch (LOWORD (wParam)) {
} break ;
} return FALSE ; }
BOOL CALLBACK DlgProc3 (HWND hDlg, UINT iMsg, WPARAM wParam, LPARAM lParam) {
switch (iMsg) { case WM_INITDIALOG :
return TRUE ;
case WM_COMMAND : switch (LOWORD (wParam)) {
} break ;
} return FALSE ; }
|
| Код | //Microsoft Developer Studio generated resource script. // #include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #define APSTUDIO_HIDDEN_SYMBOLS #include "windows.h" #undef APSTUDIO_HIDDEN_SYMBOLS
///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS
///////////////////////////////////////////////////////////////////////////// // Russian resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) #ifdef _WIN32 LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT #pragma code_page(1251) #endif //_WIN32
///////////////////////////////////////////////////////////////////////////// // // Dialog //
MY DIALOG DISCARDABLE 0, 0, 278, 242 STYLE DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Property Seet" FONT 8, "MS Sans Serif" BEGIN PUSHBUTTON "Exit",IDC_BUTTON1,129,33,50,14 PUSHBUTTON "Property Sheet",IDC_BUTTON2,129,64,50,14 END
#ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE //
1 TEXTINCLUDE DISCARDABLE BEGIN "resource.h\0" END
2 TEXTINCLUDE DISCARDABLE BEGIN "#define APSTUDIO_HIDDEN_SYMBOLS\r\n" "#include ""windows.h""\r\n" "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n" "\0" END
3 TEXTINCLUDE DISCARDABLE BEGIN "\r\n" "\0" END
#endif // APSTUDIO_INVOKED
///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO //
#ifdef APSTUDIO_INVOKED GUIDELINES DESIGNINFO DISCARDABLE BEGIN "MY", DIALOG BEGIN RIGHTMARGIN, 271 BOTTOMMARGIN, 238 END END #endif // APSTUDIO_INVOKED
///////////////////////////////////////////////////////////////////////////// // // Icon //
// Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. IDI_ICON1 ICON DISCARDABLE "MY.ICO" #endif // Russian resources /////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////// // English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) #ifdef _WIN32 LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US #pragma code_page(1252) #endif //_WIN32
///////////////////////////////////////////////////////////////////////////// // // Dialog //
IDD_PROPPAGE_SMALL DIALOG DISCARDABLE 0, 0, 196, 126 STYLE WS_CHILD | WS_BORDER FONT 8, "MS Sans Serif" BEGIN LTEXT "TODO: layout property page",IDC_STATIC,17,18,90,8 END
IDD_PROPPAGE_SMALL1 DIALOG DISCARDABLE 0, 0, 196, 127 STYLE WS_CHILD | WS_BORDER FONT 8, "MS Sans Serif" BEGIN LTEXT "TODO: layout property page",IDC_STATIC,53,59,90,8 END
IDD_PROPPAGE_SMALL2 DIALOG DISCARDABLE 0, 0, 196, 127 STYLE WS_CHILD | WS_BORDER FONT 8, "MS Sans Serif" BEGIN LTEXT "TODO: layout property page",IDC_STATIC,84,97,90,8 END
///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO //
#ifdef APSTUDIO_INVOKED GUIDELINES DESIGNINFO DISCARDABLE BEGIN IDD_PROPPAGE_SMALL, DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 189 TOPMARGIN, 7 BOTTOMMARGIN, 119 END
IDD_PROPPAGE_SMALL1, DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 189 TOPMARGIN, 7 BOTTOMMARGIN, 120 END
IDD_PROPPAGE_SMALL2, DIALOG BEGIN LEFTMARGIN, 7 RIGHTMARGIN, 189 TOPMARGIN, 7 BOTTOMMARGIN, 120 END END #endif // APSTUDIO_INVOKED
#endif // English (U.S.) resources /////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. //
///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED
|
|