![]() |
IconData.szTip < Variabel wie ?
Hey, habe mir nun
![]()
Code:
aber das Komische, wenn ich folgendes mache gehts:
IconData.szTip := X
Code:
Label1.Caption := X
Also mit der Variabel ist alles Okay. Kann mir jemand helfen ? Danke im Vorraus !! Gr33tZ! Tigerhead |
Re: IconData.szTip < Variabel wie ?
Zitat:
|
Re: IconData.szTip < Variabel wie ?
Wenn man über das Icon rechts unten geht, dann kommt nicht die Schrift aus der Variabel X ... sorry, bin ein ganz schlechter Erklärer :( Hoffe du verstehst was ich mein ;)
|
Re: IconData.szTip < Variabel wie ?
Caste den String mal nach PChar.
|
Re: IconData.szTip < Variabel wie ?
Hoi
Ich habe das einmal so hingewürgt:
Delphi-Quellcode:
Gruss
var
S: string begin S:= X + #0; Move(S[1], IconData.szTip, Length(S)); end; Shaman |
Re: IconData.szTip < Variabel wie ?
@ Lucke: Wie kann ich das machen ? Meinste anstatt "X:string" schreiben "X:PChar" oder "X:Char" oder ? oder irgendwas mit "inttochar(X)" oder so ? Sorry aber hatte eine größere Delphipause und programmiere noch nicht so wirklich gut !
@ Shaman: Deine Methode weist zwar keinen Fehler bei mir auf doch leider zeigt er auch die Schrift nicht an. |
Re: IconData.szTip < Variabel wie ?
Wahrscheinlich meint Luckie
Delphi-Quellcode:
IconData.szTip := PChar (X);
|
Re: IconData.szTip < Variabel wie ?
@Tigerhead: Und die Flags hast du auch richtig gesetzt?
Delphi-Quellcode:
NIF_MESSAGE or NIF_ICON or NIF_TIP
|
Re: IconData.szTip < Variabel wie ?
Hier mal der Code vom ganzen, habe viel probiert aber bis jetzt keine Lösung .. :(
Code:
Grüße!
unit mUptime;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI, Menus, StdCtrls, ExtCtrls; type TForm1 = class(TForm) PopupMenu1: TPopupMenu; Label1: TLabel; procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private declarations } IconData: TNotifyIconData; public { Public declarations } procedure WndProc(var Msg: TMessage); override; procedure WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND; end; var Form1: TForm1; implementation {$R *.dfm} function UpTime: string; // Uptime const ticksperday: Integer = 1000 * 60 * 60 * 24; ticksperhour: Integer = 1000 * 60 * 60; ticksperminute: Integer = 1000 * 60; tickspersecond: Integer = 1000; var t: Longword; d, h, m, s: Integer; begin t := GetTickCount; d := t div ticksperday; Dec(t, d * ticksperday); h := t div ticksperhour; Dec(t, h * ticksperhour); m := t div ticksperminute; Dec(t, m * ticksperminute); s := t div tickspersecond; Result := 'Läuft seit: ' + IntToStr(d) + ' Tag(e) ' + IntToStr(h) + ' Stunden ' + IntToStr(m) + ' Minuten ' + IntToStr(s) + ' Sekunden'; end; procedure TForm1.WndProc(var Msg: TMessage); var Point: TPoint; begin if Msg.Msg = WM_USER + 20 then begin case Msg.lParam of WM_RBUTTONDOWN: begin SetForegroundWindow(Handle); GetCursorPos(Point); PopUpMenu1.PopUp(Point.X, Point.Y); end; WM_LBUTTONDOWN: begin //ShowMessage('links runter'); end; WM_LBUTTONDBLCLK: begin Form1.Show; // Icon nur anzeigen wenn Fenster minimiert Shell_NotifyIcon(NIM_DELETE, @IconData); end; end; end; inherited; end; procedure TForm1.WMSysCommand(var Message: TWMSysCommand); begin if Message.CmdType and $FFF0 = SC_MINIMIZE then begin Hide; // Icon nur anzeigen wenn Fenster minimiert Shell_NotifyIcon(NIM_ADD, @IconData); end else inherited; end; procedure TForm1.FormCreate(Sender: TObject); begin Application.ShowMainForm := False; //Programm gar nicht erst anzeigen IconData.cbSize := SizeOf(IconData); IconData.Wnd := Handle; IconData.uID := 100; IconData.uFlags := NIF_MESSAGE + NIF_ICON + NIF_TIP; IconData.uCallBackMessage := WM_USER + 20; IconData.hIcon := Application.Icon.Handle; IconData.szTip := PChar(UpTime); //Geht nicht label1.caption := PChar(UpTime); //Funktioniert Wunderbar Shell_NotifyIcon(NIM_ADD, @IconData); // fügt das Icon ein end; end; procedure TForm1.FormDestroy(Sender: TObject); begin Shell_NotifyIcon(NIM_DELETE, @IconData); end; end. Tigerhead |
Re: IconData.szTip < Variabel wie ?
Verknüpf die Flags mal besser mit or.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz