Операционная система Windows 95 для программиста



         

Исходные тексты приложения Some Books


Все функции приложения Some Books определены в файле somebook.c (листинг 4.1).

Листинг 4.1. Файл somebook\somebook.c

#define STRICT #include <windows.h> #include <windowsx.h> #include <commctrl.h> #include "resource.h" #include "afxres.h" #include "somebook.h"

// Корневой элемент дерева char szBooks[] = "Книги издательства АО 'Диалог-МИФИ'";

// Вложенные элементы первого уровня char szBSPSeries[] = "Библиотека системного программиста, " "(C) Фролов А.В., Фролов Г.В., 1991-1995 г.";

char szStepSeries[] = "Персональный компьютер. Шаг за шагом, " "(C) Фролов А.В., Фролов Г.В., 1994-1995 г.";

typedef struct tagBOOKINFO { char szBookName[256]; UINT nVolumeNumber; } BOOKINFO;

// Вложенные элементы второго уровня BOOKINFO rgSPLBookInfo[]= { {"Microsoft Windows 3.1 для программиста", 11}, {"Графический интерфейс GDI в Microsoft Windows ", 14}, };

BOOKINFO rgStepBookInfo[]= { {"Операционная система Microsoft Windows. " "Руководство пользователя", 2}, {"Локальные сети персональных компьютеров", 3}, };

// Номера изображений для органа управления Tree View int idxBooks, idxBookClosed, idxBookOpened;

HINSTANCE hInst; char szAppName[] = "SomeBookApp"; char szAppTitle[] = "Some programmer and user books"; HWND hwndTree;

// ----------------------------------------------------- // Функция WinMain // ----------------------------------------------------- int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { WNDCLASSEX wc; HWND hWnd; MSG msg;

hInst = hInstance;

// Преверяем, не было ли это приложение запущено ранее hWnd = FindWindow(szAppName, NULL); if(hWnd) { if(IsIconic(hWnd)) ShowWindow(hWnd, SW_RESTORE); SetForegroundWindow(hWnd); return FALSE; }

// Регистрируем класс окна memset(&wc, 0, sizeof(wc)); wc.cbSize = sizeof(WNDCLASSEX); wc.hIconSm = LoadImage(hInst, MAKEINTRESOURCE(IDI_APPICONSM), IMAGE_ICON, 16, 16, 0); wc.style = 0; wc.lpfnWndProc = (WNDPROC)WndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInst; wc.hIcon = LoadImage(hInst, MAKEINTRESOURCE(IDI_APPICON), IMAGE_ICON, 32, 32, 0); wc.hCursor = LoadCursor(NULL, IDC_ARROW); wc.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1); wc.lpszMenuName = MAKEINTRESOURCE(IDR_APPMENU); wc.lpszClassName = szAppName; if(!RegisterClassEx(&wc)) if(!RegisterClass((LPWNDCLASS)&wc.style)) return FALSE;




Содержание  Назад  Вперед