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

Вниз

Полупрозрачный MessageBox   Найти похожие ветки 

 
Sorcerer   (2006-03-27 16:51) [0]

Здравствуйте! Как средствами Win API вывести полупрозрачный MessageBox?


 
Sorcerer   (2006-03-27 16:52) [1]

OS win XP.


 
easy ©   (2006-03-27 21:11) [2]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
const
 WM_MSGBOX  = WM_USER + 1;
type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
   procedure msgBoxShow(var msg: TMessage); message WM_MSGBOX;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure make50transp(winHWND: HWND);
var
 exStyle: Longint;
begin
 exStyle := GetWindowLong(winHWND, GWL_EXSTYLE);
 if (exStyle and WS_EX_LAYERED = 0) then begin
   exStyle := exStyle or WS_EX_LAYERED;
   SetwindowLong(winHWND, GWL_EXSTYLE, exStyle);
 end;
 SetLayeredWindowAttributes(winHWND, 0, 128, LWA_ALPHA);
end;

procedure TForm1.msgBoxShow(var msg: TMessage);
var
 msgbHandle: HWND;
begin
 msgbHandle := GetActiveWindow;
 if msgbHandle <> 0 then
   make50transp(msgbHandle);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 PostMessage(handle, WM_USER + 1, 0, 0);
 MessageBox(handle, "This Is A Transparent Message Box", "50% MessageBox.", MB_OK or MB_ICONWARNING);
end;

end.


 
Sorcerer   (2006-03-28 16:31) [3]

> easy ©   (27.03.06 21:11) [2]

Спасибо огромное!



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1147871820
Damager
2006-05-17 17:17
2006.06.25
MDI формы


15-1148928902
i-s-v
2006-05-29 22:55
2006.06.25
Нитропруссид натрия


4-1143015386
EgorovAlex
2006-03-22 11:16
2006.06.25
Почему ReadPrinter читает с принтера максимум 64Кб данных за одну


15-1149167212
Курдль
2006-06-01 17:06
2006.06.25
Прощай, Delphi! (Не про политику Borland)


4-1143356476
scolopax
2006-03-26 11:01
2006.06.25
Блокирование Desktop