|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||||||||||||
"Поймать" сообщение от LISTBOX09.11.2011, 11:40. Показов 4275. Ответов 42
Метки нет (Все метки)
Рассматриваю тут пример в книге и вот почему-то он у меня срабатывать не хочет - не могу изменять масштаб в диалоговом окне так как он тупо вообще не выбирается, может стиля какого не хватает при создании диалогового окна, или ещё чего, подскажите пожалуйста.
Собственно main.h (константы и объявления функций)
main.cpp
Собственно в нём ошибка если есть то разве что в последней функции DlgOnCommand в case ID_SCALE (строка 197), так как именно там обрабатываются сообщения от моего LISTBOX с диалогового окна, все остальные функции работают корректно. Ну ещё возможно что есть ошибка при заполнении LISTBOX (это функция DlgOnInitDialog (строка 162)), хотя вроде заполнился он нормально и все 8 строк в нём присутствуют. Сама программа,если интересно, выводит график, который она читает из dat файла (считывает первые 1000 байт). Файл dat с нормальным графиком могу предоставить, хотя можно тупо открыть любой файл чтобы программа считала с него 1000 байт, график только рандомный получится. На скриншоте видно что ни один пункт в LISTBOX "Масштаб" не выбран и мышкой не выбирается.
0
|
||||||||||||||||
| 09.11.2011, 11:40 | |
|
Ответы с готовыми решениями:
42
Поймать двойной клик по строке в LISTBOX и выполнить указанное действие Как поймать событие скроллинга в listBox? Поймать сообщение wm_copy |
|
|
|
| 09.11.2011, 18:48 | |
|
Gepar, получаешь параметр из листбокса и передаешь его функции рисования...
Не пойму че у тебя не получается...
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.11.2011, 18:53 [ТС] | |
|
programina, нет, я Ваш код разбираю и мне интересно что делает макрос TEXT, до этого никогда с ним не сталкивался, так код компилируется у меня и работает.
0
|
|
| 09.11.2011, 19:00 | |
|
0
|
|
|
|
|
| 09.11.2011, 19:04 | |
|
Gepar, Text можно вообще убрать у меня на MinGW и без него все работает.
PS: хотя у тебя может и не МinGW. К Codeblock многое прикрутить можно.. PSS: Юра, это я чайник(с)
0
|
|
|
|
|||||||
| 09.11.2011, 19:08 | |||||||
Не по теме: Проект вообще - не предполагает GetDlgItemText и поетому изменив програмно 2-ю строку в листе вместо изменённой строки получишь programina2 - потому что логики в алгоритме мало - это не получение строки листа! SetWindowText(hwndStatic, items[sel]);, ладно я ж тупой и ничё не знаю...
1
|
|||||||
|
|
|
| 09.11.2011, 19:29 | |
|
Gepar, если у тебя не получается масштабировать, то я решила твою проблему
![]() щас еще немного подправлю
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||
| 09.11.2011, 20:18 [ТС] | ||
|
0
|
||
|
|
|
| 09.11.2011, 20:24 | |
|
Gepar я не свой, а твой проект переделала и все работает
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||
| 09.11.2011, 20:26 [ТС] | ||
|
Добавлено через 1 минуту programina, так где же у меня ошибка, проект тотальной переделке не подлежит, в нём только нужно исправить ошибку, конкретно сейчас я думаю что я ловлю LBN_SELCHANGE не через тот параметр, хотя может я и ошибаюсь.
0
|
||
|
|
|||||||||||
| 09.11.2011, 20:26 | |||||||||||
|
вот так нужно
PS: никаких ifов в caseах
1
|
|||||||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.11.2011, 20:36 [ТС] | |
|
programina, так оно всё равно ничего не выбирается и не изменяется (хотя ветка вызывается при этом регулярно, это я сужу по тому что я туда MessageBox добавил так вот он то вызывался часто)
![]() Добавлено через 3 минуты Точнее не совсем ничего не выбирается - если поклацать по листу то можно выбрать 200 (график изменится), при этом 200 выделяться не будут и больше ничего выбрать после этого будет нельзя (график меняться больше не будет).
0
|
|
|
|
|
| 09.11.2011, 20:37 | |
|
как не изменяется скажешь масштаб не меняется когда закрываешь диалог с процентами
![]() или тебе надо чтобы график менялся динамично щелкая по строкам в листбоксе?
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.11.2011, 20:40 [ТС] | |
|
Убрал WM_NOTIFY из ресурсов - теперь строчка выделяется (а я то думал именно оно нужно чтобы сообщения присылались, хех), но теперь я могу выбрать либо 100 либо 200 (притом можно выбрать 125 либо ещё чего, всё равно, при клике по листу установится значение 200 (и график перерисуется соответственно) ). Те: изначально при открытии выбрано 100 по умолчанию, а я могу выбрать 200 и всё. Дальше что не выбирай - ничего не меняется и при закрытии и открытии диалогового окна установлено 200.
0
|
|
|
|
|
| 09.11.2011, 20:42 | |
|
давай я скину тебе твой переделанный проект
у меня все масштабы выбираются
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.11.2011, 20:43 [ТС] | |
|
Вот, честно, уж не думал что столько проблем будет с нещасным листбоксом, в этом WINAPI я смотрю так заблудиться можно.
Добавлено через 25 секунд programina, давай, я посмотрю и сравню
0
|
|
|
|
|
| 09.11.2011, 20:45 | |
|
Лови
1
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||
| 09.11.2011, 20:51 [ТС] | ||||||
|
programina, сейчас посмотрю, опытным методом определил почему всегда 200
Добавлено через 1 минуту programina, да, Ваш вариант работает как положено, сейчас попробую найти какая строка у Вас отличается от моих наработок.
0
|
||||||
|
|
|
| 09.11.2011, 20:52 | |
|
Ну ты скажи у тебя все масштабы выбираются? А то вдруг дело не в коде
PS: не отвечай ![]() стормозила чуточку
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.11.2011, 20:59 [ТС] | |
|
Хм, едиснтвенное отличие что я нашёл это вызов OnPaint в конце, правда он и так должен вызываться же после InvalidateRect да и не должен влиять на сам график.
1
|
|
|
|
||||||
| 09.11.2011, 21:07 | ||||||
|
Gepar удали онпайнт я забыла убрать
![]()
0
|
||||||
| 09.11.2011, 21:07 | |
|
Помогаю со студенческими работами здесь
40
Как поймать сообщение об ошибке Не могу поймать сообщение wm_copydata Хук, который должен поймать сообщение WM_SIZE, его не ловит ListBox и всплывающее сообщение Если в listbox есть определенное название,выводит сообщение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита, которое может. . .
|
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
На примере нетипового документа разработанного в конфигурации КА2.
В качестве источника данных указан регистр накопления, в который записываются данные о. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
|
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-text-sdl3-c. zip
finish-text-sdl3-cpp. zip
|