powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / На чем делают навороченные бизнес-уровня GUI-приложения на C++?
25 сообщений из 75, страница 3 из 3
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980127
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)
например тынц
Ну вот... этот парень уже всё и реализовал, что я только собирался придумать
Вообще это проблема, прямяком касающаяся C++ и его низкой популярности: существует в мире множество хороших решений на C++ на все случаи жизни, просто мы о них не знаем.
Dimitry Sibiryakov
А я говорю про виртуальный listview (ownerdata):
ну да, я немного перепутал, ownerdraw - onwerdata, ок, но иконки в ней не работают. Msdn я читал. Чтобы иконки заработали, надо чтобы было lvs_ownerdrawfixed, но там придётся в wm_drawitem обрабатывать события. Ради одних иконок городить это не захотелось, ибо всё равно придётся всё рисовать вручную.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980140
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb
заработали, надо чтобы было lvs_ownerdrawfixed, но там придётся в wm_drawitem обрабатывать события. Ради одних иконок городить это не захотелось, ибо всё равно придётся всё рисовать вручную.

Да нет же! Рисовать нужно только иконки. Для остальных итемов нужно вызывать стандартную оконную функцию для данного класса окна.

По крайней мере я так помню.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980146
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav
Да нет же! Рисовать нужно только иконки. Для остальных итемов нужно вызывать стандартную оконную функцию для данного класса окна.
Ну ок, спасиб, я посмотрю. У меня тогда не получилось, я загуглил, нашёл несколько постов на форумах про ту же проблему, про то, что оно не работает, и решил не тратить время.
PS: загуглил и вспомнил, что у меня не иконки, а чекбоксы не рисовались!
Вот же блин, а я тут с умным видом всех убеждаю...
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980160
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb
petrav
Да нет же! Рисовать нужно только иконки. Для остальных итемов нужно вызывать стандартную оконную функцию для данного класса окна.
Ну ок, спасиб, я посмотрю. У меня тогда не получилось, я загуглил, нашёл несколько постов на форумах про ту же проблему, про то, что оно не работает, и решил не тратить время.
PS: загуглил и вспомнил, что у меня не иконки, а чекбоксы не рисовались!
Вот же блин, а я тут с умным видом всех убеждаю...

Тяжело вам там на WinAPI... понимаю.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980175
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMbMsdn я читал. Чтобы иконки заработали, надо чтобы было lvs_ownerdrawfixed

Не надо. Но их таки придётся запихнуть в ImageList.

CEMbзагуглил и вспомнил, что у меня не иконки, а чекбоксы не рисовались!

Да, это другая проблема, но опять же:
MSDN In particular, the list-view control does not maintain state or overlay images
for each item. However, you can have the list-view control query your application for
these images by sending it an LVM_SETCALLBACKMASK message.

Чекбоксы, насколько я помню, это как раз оверлеи.

И нет, не надо кивать на гугль, это я уже проходил с багом TCheckListBox в VCL. Все 100500
"решений" говорили "надо рисовать руками", но я сумел заставить его работать просто
перехватив обработку одного сообщения (которое у них в коде обрабатывалось криво).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980319
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav
Тяжело вам там на WinAPI... понимаю.
Ох, да
Dimitry Sibiryakov
Чекбоксы, насколько я помню, это как раз оверлеи.
Сделал, как написано, иконки есть, чекбоксов нет. Чекбоксы лежат в листе state-image, я покопался в листах и нашёл их там(если у listview есть стиль lvs_ex_checkboxes). Поигрался, получилось, что если установлен стиль для чекбоксов, то "самая первая", отдельная, колонка будет изображать иконки из state-image-list-а, если его отдельно накатить. В случае виртуальной гриды - ничего не рисуется.
Dimitry Sibiryakov
TCheckListBox в VCL
Так это ж совсем другой контрол? VCL же ничего не наследует из системы?
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980375
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMbВ случае виртуальной гриды - ничего не рисуется.

Ну да. Потому что "A virtual list-view control maintains very little item information
itself. Except for the item selection and focus information, the owner of the control
must manage all item information
". Именно поэтому-то "you can have the list-view
control query your application for these images by sending it an LVM_SETCALLBACKMASK message".

Ты вообще не читаешь мои цитаты из MSDN?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980376
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMbVCL же ничего не наследует из системы?

VCL это не Qt, она использует системные виджеты. Хотя, конечно, чем дальше, тем более
окутевает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980380
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Ты вообще не читаешь мои цитаты из MSDN?..
да:
CEMb
Сделал, как написано
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980384
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
....и обнаружил, что я не прав, и чекбоксы это не оверлеи, а состояние. Теперь делай выдачу
состояния по колбэку.

https://docs.microsoft.com/en-us/windows/win32/controls/lvm-setcallbackmask
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980398
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Теперь делай выдачу
состояния по колбэку.
да сделал же уже и отписался :)
Dimitry Sibiryakov
чекбоксы это не оверлеи, а состояние
это и оверлеи и состояние. Накат на окно стиля_с_чебоксами, автоматически вкатывает в окно лист со states, где лежат две картинки с пустым и полным чекбоксами. Это, как бы, и разумно, потому что погроммист может просто подменить лист своим листом и получить себе состояния в "самой первой" колонке, которые можно менять кликом.

… лучше бы мне кто с Керберосом помог (°_°)
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980401
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMbда сделал же уже и отписался :)

И? Ты проверил, что маска установилась? Твоё окно не получает сообщение или листбокс не
реагирует на состояние, которое ты из него возвращаешь?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980403
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
И? Ты проверил, что маска установилась? Твоё окно не получает сообщение или листбокс не
реагирует на состояние, которое ты из него возвращаешь?
Да. Получает. Не реагирует.
Посмотрел всё под дебагом, на двух гридах, виртуальной и нет.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980407
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMbДа. Получает. Не реагирует.

Код покажешь?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980412
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, нет, он у меня в корпоративной сетке.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980877
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроик Семён,

"навороченные галактического уровня: гугли CodeJock и BCGSoft.

Над MFC, ага - только для Windows.

На Qt есть нечто похожее, но если смотреть в сумерках, прищурившись
...
Для себя open-source: Qt в варианте gpl. Или wxWidgets.
...
Для себя close-source: wxWidgets.
...
Формобатонокидательство в wxWidgets нечуть не хуже, чем в Qt, надо только разобраться. Приложения с wxWidgets собираются и работают быстрее.
Нет попытки захапать всё, не реализовав толком ничего полностью. Только гуй.
Гриды - в режиме, похожем на режим с кастомдатасорцем во вьюшках TCxGrid's. В Qt - то же самое, в общем, но есть режим, когда датасорц используют готовые драйверы к СУБД от Qt, но эти драйверы так убоги, что лучше без них.
Ну и лицензия на Qt совсем не гуманна.

С репортбилдерами всё везде никак, надо отдельно искать, или ручками.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39980881
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроик Семён
Уроки в Youtube по wxWidgets /Qt.

Потерянное время.
Читай доку, в wxWidgets она уже пригодная.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39981185
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.

А что в сообществе C++ думают об Embarcadero C++ Builder? Насколько используется в проектах, не в курсе?
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39981206
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,

В топике с Керберосом ты задал порядка 10 нечётких вопросов.

Как прикажешь тебе помогать?
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39992788
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Как прикажешь тебе помогать?
Кто чем может
Я там уже ответы написал, вдруг кому пригодится


Dimitry Sibiryakov
Именно поэтому-то "you can have the list-view
control query your application for these images by sending it an LVM_SETCALLBACKMASK message".
там речь про индекс картинки а не про хендл. Хендл в обоих случаях хранится в имидж_листе. Индекс получается в первом случае из итема, во втором случае из колбака. Но в обоих случаях итем извлекается из имидж_листа.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39993333
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,

лол, выглядит прикольно. даже не знал, что это ListView обычный, прокрутку можно при этом включить?
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39993348
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
лол, выглядит прикольно. даже не знал, что это ListView обычный, прокрутку можно при этом включить?
да она вроде там не отключается (если речь про виртуальный listview)
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39993372
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,

я про рабочий стол :)
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39993387
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
я про рабочий стол :)
А! Да, после включения стиля надо на рабочем столе нажать F5, и скроллбар и header появятся.
...
Рейтинг: 0 / 0
На чем делают навороченные бизнес-уровня GUI-приложения на C++?
    #39993778
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AdamAry
...
Почему в С++ тормоз?
Почему в Go, C# не тормоз?


это такой скрытый пиар ход... ну или юноша ничего более не знает в жизни :)

(круглый)
...
Рейтинг: 0 / 0
25 сообщений из 75, страница 3 из 3
Форумы / C++ [игнор отключен] [закрыт для гостей] / На чем делают навороченные бизнес-уровня GUI-приложения на C++?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]