
Быстрый поиск
Введите фрагмент названия статьи для поиска

Подсказки (tooltips) в диалоговых окнах
16.09.2009 | Категория: Образ мышления: Assembler | Автор: ManHunter
Еще один способ придать вашим программам профессиональный вид - использование всплывающих подсказок (tooltips), которые появляются при наведении курсора мыши на какой-нибудь элемент диалогового окна. Готовые примеры на FASM или слишком громоздкие, или недостаточно гибкие, поэтому пришлось придумывать что-то свое. Причем с самого начала поставил себе задачу сделать функции работы с подсказками как можно более универсальными, чтобы в дальнейшем их можно было легко использовать в других проектах.В сегменте данных определим все необходимые константы, переменные и структуры. Большая часть этих данных в FASM по умолчанию отсутствует, так что пришлось штудировать MSDN и другие источники и описывать их самостоятельно.
Code (Assembler) : Убрать нумерацию
- ; Сегмент данных
- section '.data' data readable writeable
- hwndTip dd ? ; Хэндл окна подсказки
- TTipFlag dd ? ; Флаг активности подсказки
- ; Структура TRACKMOUSEEVENT не определена, сделаем это сами
- struct TRACKMOUSEEVENT
- cbSize dd ?
- dwFlags dd ?
- hwndTrack dd ?
- dwHoverTime dd ?
- ends
- ; Определяем нужные структуры
- tme TRACKMOUSEEVENT
- pt POINT
- ttip TOOLINFO
- trect RECT
- oldX dd ? ; Сохраненные координаты мыши
- oldY dd ?
- ; Определяем нужные константы
- TTM_TRACKACTIVATE = WM_USER + 17
- TTM_TRACKPOSITION = WM_USER + 18
- TTM_SETMAXTIPWIDTH = WM_USER + 24
- ; Сообщения окну подсказки
- TTF_SUBCLASS = 0x0010
- TTF_TRACK = 0x0020
- TTF_ABSOLUTE = 0x0080
- TTF_TRANSPARENT = 0x0100
- ; Сообщение обработчика мыши
- TME_LEAVE = 0x00000002
- ; Максимальная ширина всплывающей подсказки
- TOOLTIP_WIDTH = 200
- ; Предустановленное количество элементов в массиве подсказок
- TOOLTIPS_COUNT = 5
- ; Массив данных для всплывающих подсказок
- ; Формат массива:
- ; 1 DWORD - сохраненный адрес обработчика
- ; 2 DWORD - адрес подсказки
- tt_data rd (TOOLTIPS_COUNT*2)
Читать статью целиком »
Просмотров: 5818 | Комментариев: 10

Поздравляю с Днем программиста!
13.09.2009 | Категория: Всякая всячина | Автор: ManHunter

Поздравляю с Днем программиста!
Наступил 256-й день года, значит программисты всего мира празднуют свой профессиональный праздник. Программист - это не тот, кто пишет программы, а тот, чьи программы работают. Я хочу пожелать всем коллегам работающего кода, поменьше багов, достойной оплаты труда, успехов в личной жизни, настоящих друзей в реале, а также остальных материальных и духовных благ :) С праздником!
Просмотров: 8192 | Комментариев: 6

Готовим дагестанские чуду
10.09.2009 | Категория: А еще я туда ем! | Автор: ManHunter

Дагестанские чуду
Чуду (ударение на втором слоге) - национальное блюдо народностей Дагестана. Когда я там был, чуду стали моим любимым блюдом, причем в разных районах республики и чуть ли не в каждой кафешке их готовили по-разному. Перед вами один из самых простых рецептов этой кавказской вкуснятины.
Читать статью целиком »
Просмотров: 101843 | Комментариев: 92

Выставка "Орудия пыток средневековья"
07.09.2009 | Категория: Жизнь в оффлайне | Автор: ManHunter

Выставка "Орудия пыток средневековья"
В отпуске снова съездил в Питер отдохнуть. Гуляя по городу, завернул в Петропавловскую крепость на выставку "Орудия пыток средневековья". Я был тут два года назад, с тех пор экспозиция очень изменилась, и не вся в лучшую сторону. Поэтому я собрал фотографии с обеих посещений, они как раз очень удачно дополняют друг друга. Не рекомендуется к просмотру впечатлительным людям и людям со слабой психикой.
Читать статью целиком »
Просмотров: 109394 | Комментариев: 163

Фестиваль "Dark Forest"
05.09.2009 | Категория: Жизнь в оффлайне | Автор: ManHunter

Фестиваль "Dark Forest"
Сегодня вроде как День города, но всякие массовые мероприятия вызывают у меня стойкое отвращение, поэтому я отправился на концерт. Тем более клуб "Релакс" сегодня открылся после ремонта, и это первый концерт в обновленном зале. Клуб действительно стал лучше, концертный зал расширился, в нем появились работающие кондиционеры, столики, барные стойки, наконец-то отремонтировали туалеты, и вообще теперь клуб поднялся на качественно новый уровень.
Читать статью целиком »
Просмотров: 4877 | Комментариев: 2
