Исходный текст программы, выводящей в окно строку символов

В предыдущей главе была рассмотрена структура простейшего 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&) {//Определяем нашу функцию Paint О

dc.TextOut(10,10,"Строка текста"); //Вывод строки текста

} /*Главная функция приложения OwlMain*/

int OwlMain(int,char*[]){

MyApp* myApp=new MyApp;

return myApp->Run(); }


Обработка сообщения WM_PAINT и интерфейс GDI_____________________________ 229


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: