Форум: "WinAPI";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
Вниз
Каверзный вопрос Найти похожие ветки
← →
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 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c