Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

класс холста - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа не компилируется при перестановке прототипов шаблонных функций http://www.cyberforum.ru/cpp-beginners/thread755257.html
Если переставить местами прототипы функций то программа не скомпилируется. Почему? В первой все хорошо, а вторая не компилируется только из-за того, что переставил местами функции Swap. 1....
C++ Задачи на классы Добрый вечер всем! Меня интересуют задачи на классы или перезагрузку операторов. Если кто-то имеет, сбрасывайте в эту тему! Я теории начитался, а вот практики мне не хватает! Извините за эту тему но... http://www.cyberforum.ru/cpp-beginners/thread755241.html
C++ Посчитать количество цифр и букв в строке
срочно. прошу вашу помощь_)) во введенной строке символов, заканчивающихся $. посчитать общее количество цифр и букв S. на с++.
C++ конструктор и деструктор
Разработать класс, набор методов(конструктор, деструктор и указанные методы) для программной модели заданного объекта. Описание объекта и его основных свойств приводится ниже. Предоставить программу...
C++ Типы bool и int http://www.cyberforum.ru/cpp-beginners/thread755201.html
Зачем использовать тип bool если можно сделать тоже самое с помощью типа int Например объявляем переменую типа int если ее значение равно нулю то ложь, если единице то истина. int x = 0;//Ложь x...
C++ Ввод данных без нажатия «Enter» Добрый день Интересует такой вопрос После ввода числа нужно нажимать клавишу ENTER Как можно добится того, чтобы после ввода числа сразу переходило на набор другого, т.е. не нажимать постоянно... подробнее

Показать сообщение отдельно
antokarpo
0 / 0 / 0
Регистрация: 07.01.2013
Сообщений: 6

класс холста - C++

07.01.2013, 22:36. Просмотров 462. Ответов 10
Метки (Все метки)

Здравствуйте всем.
Пытаюсь реализовать класс "холста" или канвы. Задумывается это как объект в виде белого прямоугольника, внутри которого будут рисоваться все нужные примитивы (линии, круги, прямоугольники и т.п.). Так вот, не могу сообразить куда прикрутить контекст устройства для этого объекта. Каким образом заставить программу понять, что данный контекст устройства привязан не к экрану, не к окну, а именно к этому прямоугольнику?

Вот то, что у меня на данный момент есть по этому вопросу:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
struct Paires {int x, int y};
 
class GCanvas
{
    public:
        GCanvas(int,int);
        virtual ~GCanvas();
 
        void Draw(HDC, int, int);
        Paires MoveTo(int,int);
        Paires LineTo(int,int);
    protected:
    private:
        int height;
        int width;
        HDC handle;
        Paires PenPos;
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
GCanvas::GCanvas(int w=640,int h=480)
{
    height = h;
    width = w;
    PenPos.x = 0;
    PenPos.y = 0;
}
 
GCanvas::~GCanvas()
{
    //dtor
}
 
void GCanvas::Draw(HDC hdc, int x, int y)
{
    Rectangle(hdc,x,y,x+width,y+height);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru