![]() |
#1 |
NavAx
|
Покрасить фон Аксапты
Короче - для удобства юзверей есть задачка.
Грубо говоря - нужно установить фон окна Аксапты в определенный цвет. Есть два требования: 1. Должно позволять покрасить две разных одновременно запущенных Акспт в разные цвета. 2. Не должно быть в виде внешней .dll, .ocx и т.д. P.S. SetSysColors по понятным причинам не катит. ![]() |
|
![]() |
#2 |
Участник
|
Какое окно имеется в виду?
__________________
Axapta v.3.0 sp5 kr2 |
|
![]() |
#3 |
NavAx
|
Все подряд.
![]() Имеется в виду фон, который видно сразу после запуска и появления главного меню (тот, который за самим меню, ну блин, не знаю, как еще объяснить). Короче - MDIChild, если что-то кому-то это говорит. То место, на фоне которого появляются все формы, главное меню и прочая лабуда под названием MS Axapta v xx.xx SP yy CU zz. |
|
![]() |
#4 |
Модератор
|
Ну, хотя бы главное меню перекрасить
![]() Типа hWnd = WinAPI::findWindow(0, "Главное меню"). Потом получить дс... и перекрасить. Короче, кто-нибудь делал? С Уважением, Георгий |
|
![]() |
#5 |
Участник
|
Было давно, год или два назад, несколько обсуждений... цель-то ясна - не запутаться в нескольких одновременно запущенных у одного юзера базах, так ?
![]() |
|
![]() |
#6 |
Banned
|
Цитата:
Изначально опубликовано Zabr
Было давно, год или два назад, несколько обсуждений... цель-то ясна - не запутаться в нескольких одновременно запущенных у одного юзера базах, так ? ![]() Плюсы: модификация всего на пол-экрана кода, простая, работает предельно быстро. Минусы: цвет control'ов остается прежним, т.е. поля, скажем, как бы остаются серыми "островками" посреди цветного "моря". Можно исправить, работая с каждым элементом в дизайне отдельно, но есть подозрение, что тогда упадет производительность. Чисто эстетически выглядит отвратно, но пользователи хавают. Если хотите, могу поискать и предоставить код. |
|
![]() |
#7 |
Участник
|
Было бы интересно посмотреть
|
|
![]() |
#8 |
Участник
|
Извините, но задачу идентификации окна Axapta можно реализовать намного проще и элегантнее. IMHO
PHP код:
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: mazzy (5). |
![]() |
#9 |
Участник
|
![]() Огромное, AndyD, Вам спасибо!!! ![]() |
|
![]() |
#10 |
NavAx
|
Нууу, эт не совсем то, что требовалось. так я и сам могу.
![]() Надо, чтобы даже самый тупой юзверь при всем желании не смог перепутать. Опять же - кто-то может включить автоскрытие панель задач, и возвращаемся к исходному варианту. P.S. Кстати, а прямо SetWindowText там что, не прокатил бы? Аааа, там наверное, стандартная обработка WM_SETTEXT откручена, чтоб никакой злобный хацкер не поменял заголовок... ![]() |
|
![]() |
#11 |
Участник
|
Вообще-то infolog.hWnd() - это хэндл главного окна Axapta, а элегантность решения - необходимое вам название будет видно и на панели задач и при переключении м-ду процессами ч/з ALT+TAB
__________________
Axapta v.3.0 sp5 kr2 |
|
![]() |
#12 |
NavAx
|
Я знаю, что это хэндл главного окна.
Я хочу сказать, что если напрямую послать ему SETTEXT или сказать ему SetWindowText, то фокус не пройдёт. А вот если вызвать DefWindowProc, то прокатит. Причем здесь элегантность при переключении, я не понял. Ну, будет видно, и ладно. Исходная цель была - чтобы различие бросалось в глаза. А с изменением названия окна - не то, чтобы очень... |
|
![]() |
#13 |
Участник
|
еще можно прицепить задоченное незакрываемое окно красного цвета к верхнему тулбару.
и чтоб мигало и переливалось по таймеру. тогда точно бросится |
|
![]() |
#14 |
Участник
|
Я имел в виду, что если у пользователя запущено несколько окон Axapta, то чтобы выяснить в каком ему надо работать придется их перебирь (ну или помнить), а так список будет у него перед глазами
__________________
Axapta v.3.0 sp5 kr2 |
|
![]() |
#15 |
NavAx
|
Прошу прощения, что не по существу. Задачка, конечно, интересная, но я никак не могу понять, зачем различать запущенные аксапты? Для различия между компаниями или серверовами? Не слишком ли это накладно, покупать по нескольку лицензий на одного пользователя?
__________________
Isn't it nice when things just work? |
|
![]() |
#16 |
Дмитрий Ерин
|
Цитата:
Изначально опубликовано Maximin
Исходная цель была - чтобы различие бросалось в глаза. А с изменением названия окна - не то, чтобы очень... ![]() Хотя... можно было, наверное, развить идею - нарисовать свои значки... И про цвет рабочей области тоже думал... Но потом забил - и так вполне устраивает ![]()
__________________
![]() |
|
![]() |
#17 |
NavAx
|
2 macklakov:
Есть 2 базы - рабочая и тестовая. Соответственно, чел по запарке может сесть не на ту базу и давай заказы фигачить. ![]() 2 Ruff: Я тоже уже подумал насчет значков. Наверное, так и сделаем. |
|
![]() |
#18 |
Участник
|
А как значок поменять для окна Axapta?
|
|
![]() |
#19 |
Участник
|
Извинения автору, но если кому-нибудь пойдет раскраска с использованием dll напишите, выложу
__________________
Axapta v.3.0 sp5 kr2 |
|
![]() |
#20 |
NavAx
|
2 AndyD: Как мнимум, мне интересно
![]() P.S. Хотя идея с закрашиванием фона и не так красива, как идея, с раскрашиванием курсора ![]()
__________________
Isn't it nice when things just work? |
|
Теги |
ax2009, axapta, download, faq, winapi, база данных, внешний вид, законченный пример, иконка, интерфейс, полезное, фон |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|