12. Комбинированные списки, окна редактирования и статические текстовые объекты. (1058853)
Текст из файла
1.Комбинированные списки, окна редактирования и статические текстовые объекты.1. Комбинированные спискиЭтот орган является комбинацией списка и однострочного редактора текста. Например, выбор размерашрифта.А) Создание:hComboBox = CreateWindow("ComboBox", NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL|CBS_AUTOHSCROLL|CBS_SIMPLE,30,30,200,200,hwnd,(HMENU) ID_LIST, hInst, NULL);2 – заголовок (должен быть NULL)8 – идентификатор родительского окна, куда будет поступать сообщение WM_COMMAND9 – идентификатор спискаБ) Стили:CBS_DROPDOWN – список невидим, пока пользователь не щелкнет по пиктограмме.CBS_DROPDOWNLIST – аналогично, но нет возможности редактированияCBS_AUTOHSCROLL – автоматическая свертка по горизонталиСBS_SIMPLE – всегда виден, под окном однострочного редактора.В) Коды извещенияСписок "combobox" посылает в родительское окно сообщение WM_COMMAND.
Параметр wParamэтого сообщения содержит идентификатор списка. Младшее слово параметра lParam содержитидентификатор окна списка, а старшее - код извещения.CBN_CLOSEUP – список стал невидимымCBN_DROPDOWN – стал видимымCBN_KILLFOCUS (SETFOCUS) – теряет фокус ввода (приобрел)CBN_DBLCLK – Двойной щелчок левой клавишей мыши по строке списка, имеющего стиль CBS_SIMPLE.А так же CBN_EDITCHANGE, CBN_EDITUPDATE, CBN_SELENDOK (выбор строки в списке) CBN_SELCHANGE(изменил выбор)Г) Сообщения для спискаФункция SendMessage, посылающая сообщения списку "combobox", возвращает значение, котороезависит от выполняемой функции или коды ошибок.CB_ADDSTRING - Добавление строки в список.CB_DELETESTRING – Удаление строки из списка.CB_DIR Заполнение списка именами файлов и каталогов, расположенных в текущем каталоге, а такжеименами дисков.2.
Окна редактированияРедактор используется для ввода, редактирования текста и текстовых файлов + можетиспользоваться выделение и работа с буфером.А) Создание (парметры аналогично комбобоксу):hwndEdit = CreateWindow("edit",NULL, WS_CHILD|WS_VISIBLE|WS_BORDER|ES_LEFT,30, 30, 300, 30, hwnd, (HMENU) ID_EDIT, hInst, NULL);Б) Стили:ES_MULTILINE – многострочный редактор текстаES_READONLY – орган управления только для чтенияES_LOWERCASE (UPPER) – преобразование к строчным (заглавным) символам.ES_AUTOV(H)SCROLL – автоматическая свертка по вертикали(горизонтали)ES_CENTER/RIGHT/LEFT –выравнивание текстаES_PASSWORS – отображение * (для пароля).В) Коды извещенияТекстовый редактор посылает в родительское окно сообщение WM_COMMAND с параметром wParam,равным идентификатору редактора.
Младшее слово параметра lParam содержит идентификатор окна,полученный от функции CreateWindow при создании редактора. Старшее слово параметра lParamсодержит код извещения.EN_CHANGE – изменилось содержимое текста в окне редактированияEN_H(V)SCROLL – выполнена свертка текста по горизонтали (вертикали)EN_KILLFOCUS (SETFOCUS)– потерян фокус ввода, получен фокус ввода.Г) Сообщения (С помощью функции SendMessage) можно посылать различные сообщения редактору:Пример: WORD nState; nState = (WORD) SendMessage(hEdit, EM_CANUNDO, 0, 0L);EM_CANUNDO – проверка поддержки отмены последнего действия3.
Статический орган управления (статический текстовый объект)Это окно, создаваемое на базе предопределенного класса "static". Строго говоря, статический органуправления нельзя использовать для управления работой приложения, так как он не воспринимает щелчкимыши и не способен обрабатывать сообщения от клавиатуры. Статический орган управления не посылаетродительскому окну сообщение WM_COMMAND.Когда курсор мыши перемещается над статическим органом управления, Windows посылает функцииокна этого органа сообщение WM_NCHITTEST.
В ответ на это сообщение статический орган возвращаетWindows значение HTTRANSPARENT. В результате Windows посылает сообщение WM_NCHITTESTродительскому окну, лежащему под органом управления.Используется для оформления внешнего вида диалоговых панелей или окон приложения, дляотображения пиктограмм.А) СозданиеHWND hStatic = CreateWindow ("static", NULL, WS_CHILD|WS_VISIBLE|SS_BLACKFRAME, 20, 40, 100, 50, hWnd, (HMENU)-1, hInstance, NULL);2 – текст внутри статического органа; 8 – идентификатор родительского окна9 – так как статический орган управления не посылает сообщения родительскому окну, можно указатьлюбое число – идентификатор статического органаБ) Стили:SS_BLACKFRAME, SS_GRAYFRAME и SS_WHITEFRAME – прямоугольные рамки, внутри не закрашеныSS_BLACKRECT, SS_GRAYRECT и SS_WHITERECT – закрашенные прямоугольники.SS_LEFT, SS_RIGHT, SS_CENTER, SS_LEFTNOWORDWRAP, SS_SIMPLE – для текста.4 – обрезает не поместившийся текст и заменяет ТАВ на пробелы5 – то же, но без замены..
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.