Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > VB6 > Цвет меню и строки состояния |
Автор: amt 21.9.2005, 20:19 |
![]() Как сделать, чтобы цвет меню и строки сотояния был такойже как backcolor формы? ![]() Заранее благодарен. ![]() |
Автор: Akina 21.9.2005, 20:22 |
Какого именно меню? какой именно строки состояния? с цветовой схемой Винды хочешь поиграться по GotFocus/LostFocus? удачи... |
Автор: Staruha 21.9.2005, 20:45 |
Может как в XP. Когда делаешь форму на VBA она гармонирует с темой рабочего стола |
Автор: amt 21.9.2005, 21:20 |
Если backcolor формы сделать например зеленого цвета, то строка меню (Файл, Правка, Вид...) и строка состояния StatusBar остаются серыми. Как у них поменять цвет не трогая цветовые схемы Windows? |
Автор: Spawn™Production® 21.9.2005, 21:22 |
Сделать свои контролы с поддержкой цвета ![]() Добавлено @ 21:25 Хм, для статус-бара есть решение - применить рисунок для панели. |
Автор: amt 21.9.2005, 21:39 | ||
Spawn™Production®
Я не совсем понял, ты предлагаешь создаватьсвои графические объекты?. Можно поподробнее. На счет StatusBar понял - попробую. С уважением, AMT |
Автор: Spawn™Production® 21.9.2005, 21:43 |
Так, для изменения цвета фона меню: http://badboy.altnet.ru/?page=s52 |
Автор: ~FoX~ 23.9.2005, 14:49 | ||||||
amt Не торогая цветовой схемы не получиться......компаненты стандартные. Решений несколько - самое простое, это в момент перерисовки взять canvas или как оно там в ВБ называется (hDC - вроди) и рисовать на нем самостоятельно....Т.е. получаем девайс контекст и уже над ним изгиляемся:
Определяем кисть для заливки:
Только не забудь цвет текста поменять
Остальное в можно найти в МСДН, удачи.... |
Автор: amt 26.9.2005, 21:09 |
Spawn™Production® Спасибо за ссылку. По поводу StatusBar. Пробовал применять картинку, но она перекрывает текст в панелях, кроме того у меня в StatusBar запихан ProgressBar. Может я чего не так делал? Кто знает - подскажите. |
Автор: amt 10.10.2005, 21:15 |
Еще вопрос.![]() ![]() |
Автор: Exception 10.10.2005, 21:25 | ||
то есть цвет? фоновый? |
Автор: amt 10.10.2005, 21:29 |
Да! типа BackColor. |
Автор: Spawn™Production® 10.10.2005, 21:52 |
Может через API этого и удастся добиться... лично я много разных приколов видел, но имхо проще свой MsgBox сделать... там и картинки и всё что угодно можно впихать... |
Автор: amt 15.10.2005, 21:05 | ||
Ты имеешь ввиду с помощью формы или диалогового окна? |
Автор: kulibin 16.10.2005, 21:12 |
А как получить hwnd меню? |
Автор: cardinal 16.10.2005, 21:31 |
http://vingrad.ru/VB-VB-002144 и тут посмотри еще может чего найдешь... http://forum.vingrad.ru/index.php?act=module&module=vingradfaq&target=main_panel§ion=615 |
Автор: Exception 17.10.2005, 16:25 | ||
ты про hMenu? |
Автор: kulibin 17.10.2005, 16:50 |
С этим я уже разобрался - там ссылка была выше где-то в этой теме. Супер. Добавлено @ 16:52 Туда бы ещё иконки . . . Откопал примерчик - а он не работает. Или я дурак - или это шутка: Положить картинку в меню: Добавьте на форму 3 Image. Создайте меню с тремя подменю Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long Private Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long Private Declare Function SetMenuItemBitmaps Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags _ As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long Private Const MF_BITMAP = &H4& Private Sub Form_Load() Dim hMenu&, hSubMenu&, hMenuItem& 'объявление переменых типом Long hMenu = GetMenu(Me.hwnd) hSubMenu = GetSubMenu(hMenu, 0) hMenuItem = GetMenuItemID(hSubMenu, 0) SetMenuItemBitmaps hMenu, hMenuItem, MF_BITMAP, Image1.Picture, Image1.Picture hMenuItem = GetMenuItemID(hSubMenu, 1) SetMenuItemBitmaps hMenu, hMenuItem, MF_BITMAP, Image2.Picture, Image2.Picture hMenuItem = GetMenuItemID(hSubMenu, 2) SetMenuItemBitmaps hMenu, hMenuItem, MF_BITMAP, Image3.Picture, Image3.Picture End Sub Добавлено @ 16:54 Да - и ещё одно разочарование: контекстные меню красятся только если они вызваны щелчком по форме. А вот в трее(компонент MBTray) и на кнопке(Inovartis button) - нифига. Да и в текстбоксах стандартных - тоже не фурычит. А жаль. |
Автор: Exception 21.10.2005, 15:57 | ||||
и не будет. хочешь - субклассь их...
что именно? |