Поиск:

Ответ в темуСоздание новой темы Создание опроса
> рисование графика 
:(
    Опции темы
Diiana
  Дата 7.8.2009, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 13.7.2007

Репутация: нет
Всего: нет



Добрый день! Не подскажите как реализовать следующую идею,какой компонент взять,с графикой не очень дружу,а приходится,с базы данных по sql запросу получаю данные (в этом проблемы нет) и по этим данным нужно нарисовать график с ползунком. smile Буду рада любой помощи
PM MAIL   Вверх
Earnest
Дата 7.8.2009, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



В MFC нет готового компонента. Сделай класс-контрол на основе Static и рисуй там свой график, так что с графикой придется подружиться. Хотя все что тебе нужно совсем несложно. Посмотри класс CDC - там все рисование.
И не понятно, что значит "график с ползунком".


--------------------
...
PM   Вверх
Diiana
  Дата 11.8.2009, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 13.7.2007

Репутация: нет
Всего: нет



Earnest, спасибо вам за ответ. вот начала рисовать в Picture Control
Код

CStatic pic;
CDC* pDC = pic.GetDC();
pDC->Ellipse(x,y,x+10,y+10);
pic.ReleaseDC(pDC);

только вот рисует с вехнего левого угла и получается график с верху вниз.а как сделать чтобы двигался с левого нижнего угла и слева на право?Вот сколько заморочек чтобы нарисовать график,из-за этого и не люблю графику smile 
PM MAIL   Вверх
Albor
Дата 11.8.2009, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 589
Регистрация: 28.2.2009

Репутация: 7
Всего: 9



Используй MoveTo() для перемещения в нужную точку.
PM MAIL ICQ   Вверх
Earnest
Дата 11.8.2009, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Во-первых, рисовать лучше в обработчике OnPaint, и тогда использовать контекст CPaintDC.

Во-вторых, система координат по-умолчанию MM_TEXT, т.е. координата у отсчитывается как у растров - с левого верхнего угла вниз. Но есть и другие системы координат, см. CDC::SetMapMode. Для графика лучше всего подойдут MM_ISOTROPIC или MM_ANISOTROPIC: можно сразу установить произвольный масштаб ( в смысле отображения единиц графика в пикселы экрана). Есть ограничение: только целые координаты, что не всегда удобно. Если хочешь работать с double координатами, придется написать свое преобразование и пересчитывать самой каждую точку. Тогда проще оставить MM_TEXT. 


--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.2204 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.