Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сделать коментарий? В Visual C++, при наведении мыши чтобы выскакивал ... 
:(
    Опции темы
napTu3aH
Дата 5.11.2003, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Есть форма в ней есть обьект где прорисовывается карта
как делать так чтобы при наведении на определенную фигуру или точку
появлялся коментарий.
PM MAIL WWW   Вверх
Paradox
Дата 5.11.2003, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



napTu3aH случайно не для военной кафедры приложение рисуешь ? smile.gif


--------------------
---
PM MAIL WWW   Вверх
shedon
Дата 5.11.2003, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

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



Перехватывай сообщение от мыши( OnMove(int x, int y); ). И при определённых координатах курсора выводи коментарий, коментарий можно вывести по разному, можно через TextOut, можно и через HtmlHelp.
Код

LPCTSTR sText = "Это коментарий"; // Текст коментария
// Координаты коментария
POINT pt;
pt.x = 200;
pt.y = 300;

HH_POPUP hPop; // структура всплывающей HTML справки
// Инициализируем структуру знаками NULL (нулями)
memset(&hPop, 0, sizeof(hPop));

// Устанавливаем размер структуры
hPop.cbStruct         = sizeof(hPop);  

// Цвет фона - жёлтый
hPop.clrBackground    = RGB(255, 255, 208);

hPop.clrForeground    = -1; // Font color
hPop.rcMargins.left   = -1;    
hPop.rcMargins.bottom = -1;
hPop.rcMargins.right  = -1;
hPop.pt               = pt;
hPop.pszText          = sText; // Текст справки
hPop.pszFont          = NULL; // Шрифт
   
HtmlHelp((DWORD)&hPop, HH_DISPLAY_TEXT_POPUP);


Это сообщение отредактировал(а) shedon - 5.11.2003, 16:04


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
Ars
Дата 5.11.2003, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 28.8.2003
Где: Московская обл.

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



Создай таймер. В обработчике WM_MOUSEMOVE сбрасывай и запускай этот таймер секунды на две и еще запоминай координаты мыша. В обработчике таймера определяй, что находится на форме по запомненным координатам и если там твоя фигура или точка - выводи соотв. комментарий


--------------------
Есть многое на свете, друг Горацио,
С чем очень долго можно прое..!
PM MAIL   Вверх
napTu3aH
Дата 5.11.2003, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вижуал не понимает что такое HH_POPUP.
Как сделать чтобы понял? smile.gif
PM MAIL WWW   Вверх
mr.DUDA
Дата 5.11.2003, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


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

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



В MFC/WTL есть такой класс как CToolTipCtrl, с его помощью можно создавать всплывающие подсказки и вешать их на всё окно, либо на его прямоугольные области. Посмотри соотв. инфу в MSDN, а если не будет получаться - пиши, помогу smile.gif


--------------------
user posted image
PM MAIL WWW   Вверх
napTu3aH
Дата 13.11.2003, 16:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Помогите разобраться с данным классом smile.gif
У меня следующий код:
Код

CToolTipCtrl helper;
CRect s_rect;
POINT pt;
pt.x = 3;
pt.y = 3;

s_rect.left=1;
s_rect.top=1;
s_rect.right=50;
s_rect.bottom=50;
helper.Create(this,0);
CString str_st;
str_st="sadfasdf";
helper.GetText(str_st,this,1);

helper.SetDelayTime(5000);
helper.Activate(TRUE);
helper.SetTipBkColor(RGB(255, 255, 208));
helper.SetTipTextColor(-1);
helper.SetMargin(s_rect);
helper.GetToolCount();

helper.SetToolRect(this,1,&s_rect);

что в нем неправильного?
вижуал ошибок не находит, но и комментрарий не появляется...

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

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


 




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


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

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