Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.24;
Скачать: CL | DM;

Вниз

Каверзный вопрос   Найти похожие ветки 

 
Hammer   (2002-04-20 16:08) [0]

Срочно! Как поместить свое изображение !вместо! кнопки ПУСК, а обязательно при этом скрыть или блокировать саму кнопку, чтобы не вызывалось меню?
Не используя EnableWindow!


 
Song ©   (2002-04-20 16:33) [1]

ShowWindow() - скрыть


 
Hammer   (2002-04-20 17:11) [2]

Song,ты не понял! Ну скрыл, и как туда поместить картинку?


 
Song ©   (2002-04-20 17:16) [3]

2Hammer (20.04.02 17:11)
А если скроешь, нафиг нужна картинка? Вы ж её всё-равно не увидите.


 
Suntechnic ©   (2002-04-21 04:08) [4]

Внедряйся в чужое пространство (хуком например). Подменяй окнонную процедуру (SetWindowLong ) и рисуй на кнопке чего душа пожелает.


 
copyr25 ©   (2002-04-22 20:45) [5]

Это, как заменить картинку .
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
StartButton: hWnd;
OldBitmap: THandle;
NewImage: TPicture;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
NewImage := TPicture.create;
NewImage.LoadFromFile("newpusk.bmp");
StartButton := FindWindowEx(FindWindow("Shell_TrayWnd", nil),0,"Button", nil);
OldBitmap := SendMessage(StartButton,BM_SetImage, 0,NewImage.Bitmap.Handle);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
SendMessage(StartButton,BM_SetImage,0,OldBitmap);
NewImage.Free;
end;

end.


 
copyr25 ©   (2002-04-22 20:55) [6]

А если "блокировать" кнопку... Можно. Но при этом она закрывается системным цветом
и вообще никакой кратинки на ней не видно.


 
copyr25 ©   (2002-04-22 21:03) [7]

Вот пример:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
EnableWindow
(FindWindowEx
(FindWindow("Shell_TrayWnd", nil),0,
"Button",nil),false);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
EnableWindow
(FindWindowEx
(FindWindow("Shell_TrayWnd", nil),0,
"Button",nil),true);
end;

end.



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

Текущий архив: 2002.06.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
3-77262
Cooper
2002-05-30 10:04
2002.06.24
TDBChart, TSeries и ежы с ним


3-77280
PSA
2002-05-30 14:19
2002.06.24
Проблема редактирования записей при подключении базы через ADO .


1-77407
Oleg+++
2002-06-10 22:18
2002.06.24
Как правильно использовать функцию SetSystemTime?


1-77334
MaximatorVeter
2002-06-04 22:46
2002.06.24
Классы и Callback!


3-77260
Destroyer
2002-05-29 14:14
2002.06.24
Глюк в DBGrid или у меня в ДНК?