Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Вниз

Полупрозрачный 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.011 c
4-1143190344
MaxxSoft
2006-03-24 11:52
2006.06.25
DLL для связи двух программ


15-1149064855
0bsid
2006-05-31 12:40
2006.06.25
Delphi уроки $$


15-1148972466
TButton
2006-05-30 11:01
2006.06.25
тех.док.


15-1149234197
Loginov Dmitry
2006-06-02 11:43
2006.06.25
Вопрос по Visual C 6.0


1-1147854590
aleshap
2006-05-17 12:29
2006.06.25
Как добавить иконку?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский