Можем ли мы рисовать фигуры (линии, круги и т. д.) в диалоговом окне MFC Visual Studio 2010? - PullRequest
1 голос
/ 06 июля 2011

Я хочу реализовать осциллограф для отображения какой-то другой частоты с помощью диалогового MFC Visual C ++, но, поскольку я слишком много гуглю, я обнаружил, что единственный способ рисовать фигуры в Visual C ++ - это использовать SDI или MDI! Я хочу знать, есть ли способ рисования моей частотной диаграммы с помощью диалогового окна MFC. если кто-нибудь знает какую-либо ссылку, я очень признателен, если он / она представит ее мне.

Ответы [ 2 ]

3 голосов
/ 06 июля 2011

Да, вы можете рисовать в диалоговых окнах с помощью MFC.

Короче говоря, выкинуть «статический» (или изображение, я не уверен) ресурс в диалоге, переопределить / получить класс и обработать WM_PAINTсообщение для рисования графика / осциллографа.

посмотрите на http://www.codeproject.com/KB/miscctrl/High-speedCharting.aspx для отличного примера.

1 голос
/ 06 июля 2011

вы можете рисовать на что угодно, используя GDI , вы даже можете реализовать пользовательский элемент управления для вашего осциллографа, если планируете использовать его повторно, иначе вы можете просто использовать статическую / картинную рамку, чтобы действовать как контейнер.

для чего-то, что может иметь много обновлений, например, для осциллографа, вам, вероятно, понадобится удвоить буфер поверхности, на которой вы рисуете, иначе вы получите разрыв. краткий обзор использования GDI можно найти здесь .

MFC имеет собственные эквиваленты структур и функций данных GDI, см. Это .

...