![]() |
|
اخفاء البالونة بعد وقت معين - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : اخفاء البالونة بعد وقت معين (/showthread.php?tid=3140) |
اخفاء البالونة بعد وقت معين - yassine_hell - 01-06-2011 السلام عليكم كيف يمكنني اخفاء البالون الاخباري بعد وقت معين ؟ كود : unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,ShellApi;
const
NIF_INFO = $10;
NIIF_INFO = $00000001;
NOTIFYICON_VERSION = 3;
type
PNewNotifyIconData = ^TNewNotifyIconData;
TDUMMYUNIONNAME = record
case Integer of
0: (uTimeout: UINT);
1: (uVersion: UINT);
end;
TNewNotifyIconData = record
cbSize: DWORD;
Wnd: HWND;
uID: UINT;
uFlags: UINT;
uCallbackMessage: UINT;
hIcon: HICON;
//Version 5.0 is 128 chars, old ver is 64 chars
szTip: array [0..127] of Char;
dwState: DWORD; //Version 5.0
dwStateMask: DWORD; //Version 5.0
szInfo: array [0..255] of Char; //Version 5.0
DUMMYUNIONNAME: TDUMMYUNIONNAME;
szInfoTitle: array [0..63] of Char; //Version 5.0
dwInfoFlags: DWORD; //Version 5.0
end;
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
IconData: TNewNotifyIconData;
procedure ShowBalloonTips;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ShowBalloonTips;
var
TipInfo, TipTitle: string;
begin
IconData.cbSize := SizeOf(IconData);
IconData.uFlags := NIF_INFO;
TipInfo := (memo1.Lines.text);
strPLCopy(IconData.szInfo, TipInfo, SizeOf(IconData.szInfo) - 1);
TipTitle := 'Yassine_hell'; //???????
strPLCopy(IconData.szInfoTitle, TipTitle, SizeOf(IconData.szInfoTitle) - 1);
IconData.dwInfoFlags := NIIF_INFO; //??????????????????????????????????
Shell_NotifyIcon(NIM_MODIFY, @IconData);
Shell_NotifyIcon(NIM_ADD, @IconData);
//Shell_NotifyIcon(NIM_DELETE, @IconData)
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowBalloonTips;
end;
end.اخفاء البالونة بعد وقت معين - أبو معاذ - 01-06-2011 و عليكم السلام ورحمة الله وبركاته ، يمكنك استعمال الخاصية كود : Application.HintHidePauseإقتباس :Envoyé par L'aide de Delphi كود : procedure TForm1.Button1Click(Sender: TObject);
begin
Application.HintHidePause := 60000; //60 Sec
end;اخفاء البالونة بعد وقت معين - yassine_hell - 01-06-2011 لم تعمل اقصد بالبالون الاخباري : http://delphi4arab.net/forum/showthread.php?tid=2672 اخفاء البالونة بعد وقت معين - kachwahed - 01-06-2011 فيما أذكر أن Windows API لا توفر طريقة لعمل ذلك بل يظهر البالون ويختفي حسب وقت لا يمكنك التحكم فيه بشكل مطلق، راجع: إقتباس :TTimeoutVersion حسب الويندوز xp لا تقل عن 10 ثوان ولا تزيد عن 60 ثانية.http://delphi4arab.net/forum/showpost.php?p=3602&postcount=16 إن كنت خبير بالـ API ربما تجد طريقة لمرواغة Windows! بالتوفيق. اخفاء البالونة بعد وقت معين - yassine_hell - 01-06-2011 حسنا اذن سأحاول بالـTimer شكرا اخفاء البالونة بعد وقت معين - kachwahed - 01-06-2011 خدعة صغيرة للقيام بذلك تدمير الـ Icon كود : Shell_NotifyIcon(NIM_DELETE, @YourTNA);PHP كود : //Setup YourTNA... |