Программирование под Win32


           

Большую пользу может принести изучение


Большую пользу может принести изучение программных примеров, включенных в пакет 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
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий