рисование в классе: C++Builder vs MSVS2005 C++
Недавно начал изучать MSVS2005 и понял, что уж больно все запутано.
Например, если в билдере я хочу сделать класс, рисующий что-то, я могу написать что-то вроде:
class CDraw
{
private:
TImage* img;
public:
CDraw(TImage* _img): img(_img){};
void Draw() {img->Canvas->...};
}
Потом, соответственно, где-то в программе создать Image м передать конструктору, дальше рисовать.
В MSVS я этот процесс совсем не понимаю. Есть рисование через событие Paint, но если там размещать весь код того, что должно быть нарисовано, то это нарушит инкапсуляцию, которую как раз и требуется получить при помощи задания собственного класса.
Собсна, вопрос: как же в MSVS сделать что-то, что будет работать как вышеозначенный код для Builder?
Например, если в билдере я хочу сделать класс, рисующий что-то, я могу написать что-то вроде:
class CDraw
{
private:
TImage* img;
public:
CDraw(TImage* _img): img(_img){};
void Draw() {img->Canvas->...};
}
Потом, соответственно, где-то в программе создать Image м передать конструктору, дальше рисовать.
В MSVS я этот процесс совсем не понимаю. Есть рисование через событие Paint, но если там размещать весь код того, что должно быть нарисовано, то это нарушит инкапсуляцию, которую как раз и требуется получить при помощи задания собственного класса.
Собсна, вопрос: как же в MSVS сделать что-то, что будет работать как вышеозначенный код для Builder?
