| |
|
|
J. Strahl | Hallo Gemeinde,
ich habe mal wieder ne Idee und kann Sie net umsetzen
Ich habe mir ein Proggi gebastelt welches mir eine Datei auf einen FTP hochlädt. Dies geschieht im Hintergrund sodaß ich während des Vorgangs normal weiter an meinen Rechner arbeiten kann. Soweit so gut. Ich würde mir gerne noch ein Tray Icon für das Programm einbinden, welches mir per Icon anzeigt ob der Upload noch läuft oder nicht. zb.: einen grün blinkenden Punkt innerhalb des Icons das der Upload noch im Gange ist.
Ich habe hier mal unter Codes nachgeschaut, leider krich ich Augenkrätze wenn ich mir die Codes für ein normales TrayIcon anschaue. Das ist doch viel zu viel Aufwand.
Hat jemand eine Idee wie man so eine kleinigkeit bewerkstelligen könnte ?
|
|
|
| Windows 7 Ultimate 64 * 12 GB Ram * XProfan 11.2a * PRFellow * PRFPAD | 15.07.2008 ▲ |
|
|
|
|
Jac de Lad | Die einfachste Idee wäre ein Umstieg auf XProfan 11, da sind Trayicon nativ dabei.
Ansonsten wäre hier schonmal ein Anfang...[web]https://xprofan.com/thread.core?t=2222[/web] |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 15.07.2008 ▲ |
|
|
|
|
J. Strahl | Danke dir, ich schau mir das mal an.
äh, hmm - Profan 11 ?? seit wann is das raus ? Hab ich was verpasst ?
|
|
|
| Windows 7 Ultimate 64 * 12 GB Ram * XProfan 11.2a * PRFellow * PRFPAD | 15.07.2008 ▲ |
|
|
|
|
Jac de Lad | Du hast definitiv was verpasst. Es ist bald fertig. |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 15.07.2008 ▲ |
|
|
|
|
RGH | Hallo,
in XProfan 11 wird es tatsächlich deutlich einfacher, aber da XProfan 11 noch nicht fertig ist und erst in den nächsten Wochen erscheint, hier die Funktionen, die Du benötigst für frühere XProfan-Versionen: KompilierenMarkierenSeparierenStruct NOTIFYICONDATA = cbSize&,
hWnd&,
uID&,
uFlags&,
uCallBackMessage&,
hIcon&,
szTip$(64)
Def &NIM_ADD $00000000
Def &NIM_MODIFY $00000001
Def &NIM_DELETE $00000002
Def &NIF_MESSAGE $00000001
Def &NIF_ICON $00000002
Def &NIF_TIP $00000004
Def Shell_NotifyIcon(2) !shell32.dll, Shell_NotifyIconA
Proc TrayIconAdd
-------------------------------------------------------------------------------
Fügt dem Systray ein Icon hinzu
hWin& - Handle des Programmfensters (meist %hWnd)
ID& - Nummer des Icons (1 für das erste, 2 für das zweite, etc.)
hIcon - Handle des Icons (z.B. erzeugt mit create(hIcon, ...))
Tip$ - Tooltip, der erscheint, wenn die Maus über dem Icon ist (max. 63 Zeichen)
-------------------------------------------------------------------------------
parameters hWin&, ID&, hIcon&, tip$
declare NID#, Result&
dim NID#, NOTIFYICONDATA
NID#.cbSize& = SizeOf(NID#)
NID#.hWnd& = hwin&
NID#.uID& = ID&
NID#.uFlags& = &NIF_ICON | &NIF_TIP | &NIF_MESSAGE
NID#.uCallBackMessage& = 65535
NID#.hIcon& = hIcon&
Case len(tip$) > 63 : Tip$ = left$(tip$,63)
NID#.szTip$ = tip$ + chr$(0)
If Shell_NotifyIcon(&NIM_ADD, NID#)
Result& = 1
Else
Result& = 0
EndIf
Return Result&
EndProc
Proc TrayIconSetIcon
-------------------------------------------------------------------------------
Ändert das Icon des TrayIcons
hWin& - Handle des Programmfensters (meist %hWnd)
ID& - Nummer des Icons (wie mit TrayIconAdd festgelegt)
hIcon - Handle des neuen Icons (z.B. erzeugt mit create(hIcon, ...))
-------------------------------------------------------------------------------
parameters hWin&, ID&, hIcon&
declare NID#, Result&
dim NID#, NOTIFYICONDATA
NID#.cbSize& = SizeOf(NID#)
NID#.hWnd& = hwin&
NID#.uID& = ID&
NID#.uFlags& = &NIF_ICON
NID#.hIcon& = hIcon&
If Shell_NotifyIcon(&NIM_MODIFY, NID#)
Result& = 1
Else
Result& = 0
EndIf
Return Result&
EndProc
Proc TrayIconSetTip
-------------------------------------------------------------------------------
Ändert den Tooltip-Text des TrayIcons
hWin& - Handle des Programmfensters (meist %hWnd)
ID& - Nummer des Icons (wie mit TrayIconAdd festgelegt)
Tip$ - Tooltip, der erscheint, wenn die Maus über dem Icon ist (max. 63 Zeichen)
-------------------------------------------------------------------------------
parameters hWin&, ID&, tip$
declare NID#, Result&
dim NID#, NOTIFYICONDATA
NID#.cbSize& = SizeOf(NID#)
NID#.hWnd& = hwin&
NID#.uID& = ID&
NID#.uFlags& = &NIF_TIP
Case len(tip$) > 63 : Tip$ = left$(tip$,63)
NID#.szTip$ = tip$ + chr$(0)
If Shell_NotifyIcon(&NIM_MODIFY, NID#)
Result& = 1
Else
Result& = 0
EndIf
Return Result&
EndProc
Proc TrayIconDelete
-------------------------------------------------------------------------------
Entfernt das TrayIcons
hWin& - Handle des Programmfensters (meist %hWnd)
ID& - Nummer des Icons (wie mit TrayIconAdd festgelegt)
-------------------------------------------------------------------------------
parameters hWin&, ID&
declare NID#, Result&
dim NID#, NOTIFYICONDATA
NID#.cbSize& = SizeOf(NID#)
NID#.hWnd& = hwin&
NID#.uID& = ID&
If Shell_NotifyIcon(&NIM_DELETE, NID#)
Result& = 1
Else
Result& = 0
EndIf
Return Result&
EndProc
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 15.07.2008 ▲ |
|
|
|
|
Jac de Lad | @Roland: Hast du auch eine Funktion, um ein vorhandenes Trayicon dazu zu bringen, einen Tooltip anzuzigen, ohne, dass der Mauszeiger drüberfährt? |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 15.07.2008 ▲ |
|
|
|