Create на чужом окне
Таким образом:
Begin
Parent:=Form2;
left:=50;
top:=50;
End;
у меня получалось вставлять только на те формы, у которых был известен класс, одним словом на те которые я делал в delphi...
Вообщем само окно нахожу вот так:
h:=FindWindow(nil,'Total Commander');
а что делать дальше???
>
у меня получалось вставлять только на те формы, у которых был известен класс,
Вывод: надо узнать класс формы, это можно сделать с помощью фун-ии
MaxCount: Integer): Integer;
WinAPI функции
Приведит пожалуйста на примере P(
А я потом с кодом сам разберусь...
>
Что-то я недопонимаю... :( :x
Приведит пожалуйста на примере P(
А я потом с кодом сам разберусь...
>
У всех потомков TWinControl, к коим относится TTrackBar, есть еще один конструктор, который как раз этим и занимается:
У всех потомков TWinControl, к коим относится TTrackBar, есть еще один конструктор, который как раз этим и занимается:
Дык и это тоже пробовал, вот:
With Button1.CreateParented(h) Do
Begin
...
End;
Я вот немогу догнать, что между Begin и End писать?
Все перепробовал там писать, что в голову приходило, но никакого результата это мне не принесло... :x То ошибки какие-нибудь вылазят, то все OK компилится, но на другом окне ничего не создается... X)- :( :{
>
Дык и это тоже пробовал, вот:
With Button1.CreateParented(h) Do
Begin
...
End;
Я вот немогу догнать, что между Begin и End писать?
Все перепробовал там писать, что в голову приходило, но никакого результата это мне не принесло... :x То ошибки какие-нибудь вылазят, то все OK компилится, но на другом окне ничего не создается... X)- :( :{
>
Попробуй вот так:
With TButton.CreateParented(h) Do
Begin
...
End;
Скорее всего ничего не выйдет... Лезешь то в память другого процесса. Так что...
var Hnd: THandle;
Btn: TButton;
begin
Hnd:=FindWindow('TForm1', 'Form1');
// Hnd:=Handle;
if Hnd <> 0 then begin
Btn:=TButton.Create(Self); // Owner = From2 чтоб кнопка автомиатически умерла на другой форме при закрытии этой формы
with Btn do begin
Name:='SuperButton';
SetBounds(10,10,200,25);
OnClick:=OnSuperButtonClick;
ParentWindow:=Hnd;
end;
end;
end;
procedure TForm2.OnSuperButtonClick(Sender: TObject);
begin
ShowMessage('U''ve pushed SuperButton!!!');
end;
У меня Form1: TForm1 в другом приложении создавалась. OnClick - событие не проскакивало в чужом приложениии, хотя кнопуся создавалась.
var Hnd: THandle;
Btn: TButton;
begin
Hnd:=FindWindow('TForm1', 'Form1');
// Hnd:=Handle;
if Hnd <> 0 then begin
Btn:=TButton.Create(Self);
with Btn do begin
Name:='SuperButton';
SetBounds(10,10,200,25);
OnClick:=OnSuperButtonClick;
ParentWindow:=Hnd;
end;
end;
end;
Спасибо за код...
button видимо создается на чужом окне :), т.к. при повторном нажатии на кнопку кричит, что таковая есть уже на том окне... (но ее невидно :x, visible пробовал - ничего X)-)
Можно ли ее сделать типа StayOnTop?
>
Можно ли ее сделать типа StayOnTop?
Знаешь панельки? Так вот - видно там какраз панельками всё закрыто. И нада создавать на панельках. Кроме того - посмотри WinSight'ом - он об окошках расскажет многое. 8)
Только нафига создавать кнопку, обработчик которой не вызывается? X)- :-?
Только нафига создавать кнопку, обработчик которой не вызывается? X)- :-?
:o совсем забыл... :(
Нифига у меня не вышло что я хотел сделать,
но всеравно спасибо всем за помощь...
>
:o совсем забыл... :(
Нифига у меня не вышло что я хотел сделать,
но всеравно спасибо всем за помощь...
>
Но думаю, можно сделать мышиный хук, который отловит момент, когда указатель проползёт над кнопкой или произойдёт клик.
Но думаю, можно сделать мышиный хук, который отловит момент, когда указатель проползёт над кнопкой или произойдёт клик.
Ну клик тут неподойдет, т.к. мне в принципе
надо не Button а TrackBar зафигачить в тотал...
AlphaBlendValue хотел менять
PS Придется ченить другое придумывать... :{
>
Ну клик тут неподойдет, т.к. мне в принципе
надо не Button а TrackBar зафигачить в тотал...
AlphaBlendValue хотел менять
PS Придется ченить другое придумывать... :{
>
Ух, блин, что-то тебя прёт с Альфы!
А плагин к тоталу написать не выход? Правда на http://ghisler.com/plugins.htm я чего-то не нашёл описания интерфейса с плагинами (их кажется 3-4 типа).
Сам я TC не использую - у меня очень сильно навороченный Эксплорер. Если чего нада интегрировать в систему - лезу в реестр.
А плагин к тоталу написать не выход?
Ты прав - выход...
Только вот я еще не дорос чтоб плагины писать... :(
>