Большую пользу может принести изучение
Большую пользу может принести изучение программных примеров, включенных в пакет Borland C++. Как видно из рис. 25.5, здесь можно найти примеры приложений DOS (в каталоге DOS), приложений Windows, написанных в традиционной манере (в каталоге windows), OWL-приложений (в каталоге OWL) и другие.
Глава 26
Обработка сообщения WM_PAINT и интерфейс графических устройств GDI
Исходный текст программы, выводящей в окно строку символов
В предыдущей главе была рассмотрена структура простейшего OWL-приложения с главным окном. Мы даже научились изменять размеры и цвет окна. Однако это окно было пусто - для того, чтобы в него что-то вывести, надо обрабатывать сообщение WM_PAINT и использовать инструменты графического интерфейса GDI. Принципы обработки сообщений Windows в OWL-прштожениях будут описаны в следующей главе; здесь же мы рассмотрим только работу с сообщением WM_PAINT и вывод на экран изображений с помощью функций GDI.
На рис. 26.1. приведен результат работы первого приложения, рассматриваемого в этой главе.
Рис. 26.1. Вывод на экран строки текста с помощью функции GDI.
//Приложение 26-1. Вывод текста в окно
//Файл 26-1.срр
#include <owl\framewin.h>
/*Класс приложения, производная от Tapplication*/
class MyApp:public TApplication{
public:
virtual void InitMainWindow(void);//Замещаем функцию InitMainWindow };
/*Класс главного окна, производный от TFrameWindow (ради Paint) */ class MyWindow:public TFrameWindow{ public:
MyWindow(TWindow*parent,const char far* title):TFrameWindow(parent,title){ Attr.X=20;Attr.Y=20;//Задаем координаты окна Attr.W=200;Attr.H=60;//Задаем размеры окна }
void Paint(TDC&,bool,TRect&);//Замещаем функцию Paint()класса TWindow };
/*Замещенная функция
InitMainWindow ()*/ void MyApp::InitMainWindow(void){
MyWindow* myWin=new MyWindow(0,"Программа
26-1");
SetMainWindow(myWin);
}
/*Замещенная функция Paint ()*/ void MyWindow::Paint(TDC&dc,bool,TRect&){//Определяем нашу функцию
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий