Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

XP-Манифест и тулбар: как побороть? [Delphi, Windows]


ecm ©   (2003-12-08 13:23:00) 

Подскажите как побороть черный фон на тулбаре, если в проекте есть XP-манифест? Тулбар установлен на панели. (Если тулбар бросать на форму - все ок)


Vladimir Kladov   (2003-12-12 12:02:00) [1]

Выяснил: это стиль TBSTYLE_WRAPABLE. Т.е. опция tboWrapable. Но для лево-право выровненных тулбаров она не идет, нужно tboTextRight вместо нее.


Vladimir Kladov   (2003-12-12 11:37:00) [2]

Специально поставил XP под Virtual PC. Без Transparent все равно не работает, т.е. это тоже надо. WS_EX_ не для Style, а для ExStyle, это просто значение совпало (не пойму только какое, вроде бы $200 в списке WS_... не числится. Или это BS_RIGHT).


Gandalf   (2003-12-09 23:17:00) [3]

Ok, but may be it's a KOL BUG? I mean (2Kladov) - let's create in KOL toolbar with this style on?


Boguslaw   (2003-12-09 22:58:00) [4]

Great !

I've been looking for solution some time ago bu found no one.

Toolbar1.Style  := Toolbar1.Style or WS_EX_CLIENTEDGE;

should be added  to FAQ !!!


ecm   (2003-12-09 18:16:00) [5]

2Kladov: В моем случае ни установка Toolbat.Transparent TRUE/FALSE ни tboTransparent TRUE/FALSE ни на что не влияла
тулбар попрежнему был черен.
Помогло установка в CreateForm (Спасибо Bmouradov!):
Toolbar1.Style  := Toolbar1.Style or WS_EX_CLIENTEDGE;


Vladimir Kladov   (2003-12-09 18:05:00) [6]

TToolbarOption = ( tboTextRight, tboTextBottom, tboFlat, tboTransparent,
                tboWrapable, tboNoDivider, tbo3DBorder );
 {* Toolbar options. When tboFlat is set and toolbar is placed onto panel,
    set its property Transparent to TRUE to provide its correct view. }


ecm   (2003-12-09 17:23:00) [7]

Облом - проблема остается: Если поставить tboFlat = TRUE
(tboTransparent дела не меняет)
:(


ecm   (2003-12-09 17:15:00) [8]

VERY SORRY. Огромное спасибо за мысль Vladimir! Была верcия KOLMHXP 1.15. После скачки и установки 1.17 (пришлось только руками все чистить :(  все стало нормально.
Еще раз всем спасибо!


ecm   (2003-12-09 16:57:00) [9]

Манифест добавлен с помощью компонента KOLMHXP.
OleInit? А почему все остальное работает?


Vladimir Kladov   (2003-12-09 16:52:00) [10]

а кака добавлен манифест? Просто руками через {$R } может быть недостаточно. Надо еще OleInit или что-то вроде вызвать.


Bmouradov   (2003-12-09 13:48:00) [11]

Если проект написан на KOL - попробуй Toolbar1.Style  :=
Toolbar1.Style or WS_EX_CLIENTEDGE;
В Vcl я не знаю.


ecm   (2003-12-09 12:02:00) [12]

З.Ы. Что характерно - изменение tboFlat на FALSE так же не дает
положительного эффекта (как написано в описании) :)


ecm   (2003-12-09 11:52:00) [13]

2Vladimir Kladov:
Поставил - эффекта никакого. (т.е. тулбар остался черным)
Проект простейший: Форма,панель, и тулбар с одной Bitmap-кнопкой без текста.
V 1.86


Vladimir Kladov   (2003-12-08 21:11:00) [14]

tboTransparent - для панели. Все в описании написано для toolbara.


ecm   (2003-12-08 18:36:00) [15]

2SPeller ©:  
Попробовал - тоже самое - фон остался черным.
Дело не в этом - ведь при бросании на форму все работает
и выглядит замечательно


SPeller   (2003-12-08 18:27:00) [16]

Попробуй прописать в файле YourProject_1.inc функцию InitCommonControls;


Наверх

Титульная страница Поиск, карта сайта Написать письмо