Вниз
Скачать: CL | DM;

Сменить фон TreeView   Найти похожие ветки 

 
Babay ©   (2006-04-04 13:43) [0]

Подскажите как средствами АПИ изменить фон элемента TreeView если я знаю его HWND

Делаю так:

Const GWL_STYLE  = (-16);
Const TVS_HASLINES = 2;
Const TV_FIRST  = $1100 ;
Const TVM_SETBKCOLOR  = (TV_FIRST + 29) ;

....

SendMessage(HWND,TVM_SETBKCOLOR, 0, rgb(255,0,0));
lngStyle:= GetWindowLong(HWND, GWL_STYLE);
SetWindowLong(HWND, GWL_STYLE, lngStyle xor TVS_HASLINES);
SetWindowLong(HWND, GWL_STYLE, lngStyle);


но цвет фона меняется только под буквами, а мне надо чтоб весь элемент перекрасился.


 
Игорь Шевченко ©   (2006-04-04 13:54) [1]


> а мне надо чтоб весь элемент перекрасился.


Попробуй обработать WM_ERASEBKGND у TreeView


 
Babay ©   (2006-04-04 16:12) [2]

Вся беда в том что этот элемент не в моем окне, у меня есть только HWND, и я немогу отработать это сообщение
.... или я чего не понял?


 
Игорь Шевченко ©   (2006-04-04 16:13) [3]

Babay ©   (04.04.06 16:12) [2]


> Вся беда в том что этот элемент не в моем окне, у меня есть
> только HWND, и я немогу отработать это сообщение


А в чем суть задачи состоит ? Может, ее можно иначе решить ?


 
Babay ©   (2006-04-04 17:51) [4]

в кратце так (одна из маленьких подзадач).
есть прога написанная на Bilder-е (тока exe файл), в ней есть треевиев, надо из другой проги поменять у этого треевиева фон.
Вот цвет фона бод буквами и буквы менять удается, а так чтоб весь фон чета никак.
Ну примерно так.
Неспрашивайте меня почему такая задача, ну просто так вышло... долго объяснять.


 
DVM ©   (2006-04-05 11:06) [5]


> Вся беда в том что этот элемент не в моем окне, у меня есть
> только HWND, и я немогу отработать это сообщение

С пом., например, хуков, внедряешься в адресное пространство другого процесса, там подменяешь оконную процедуру нужного TreeView на свою (SetWindowLong) и для всех сообщений кроме WM_ERASEBKGND вызываешь старую оконную процедуру, для WM_ERASEBKGND свою.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.032 c
6-1141886685
Михаил (Киров)
2006-03-09 09:44
2006.07.16
Нуль-модемное соединение


15-1150368553
DillerXX
2006-06-15 14:49
2006.07.16
ftp.exe почему не работает?


3-1147807812
patrick
2006-05-16 23:30
2006.07.16
help: При закрытии таблицы, в поля на форме лезет первая запись


2-1151290523
learner
2006-06-26 06:55
2006.07.16
Передача функции класса как параметра в др. функцию


2-1151580063
fast2
2006-06-29 15:21
2006.07.16
Как в StringGrid cделать столбец (один или невколько) невидимым?




   Наверх