Aufgrund der grossen Icons in Windows 7s neuer Taskleiste, kam bei mir die Idee dass ich doch Mitteilungen meiner Applikationen gar nicht über ein Tray Icon machen muss, es wäre doch viel schöner wenn ich das Icon des Programms ändern könnte.
Lässt sich dies irgendwie anstellen?
Ach ja das Icon habe ich bis jetzt unter Resourcen mit dem Namen "NewNews.ico"
Das ist das Icon des betroffenen Fensters.. Form.Icon?!
> Codejunky <
Leider nein,
ich meine das hier:
Unter den Projekteinstellungen auf den ersten Reiter Anwendung kannst du noch ein Anwendungssymbol hinterlegen. Das müsste es dann aber sein. Wobei ich mir ziemlich sicher bin, das Form.Icon eigentlich ausreichen müsste.
"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)
mit this.Icon, ändert man nur das Icon des Fensters und somit das Icon einer laufenden Ungepinnten App..wenn das Ganze nun an die Taskbar gepinnt wird, wird jedoch das Icon der Exe verwendet, ich müsste also dieses ändern, oder
die App zwingen ein eigenes Icon für die Taskbar zu zeigen...
Hast du denn mal probiert ein Icon in den Projekteinstellungen zu setzen?
"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)
wenn das Ganze nun an die Taskbar gepinnt wird, wird jedoch das Icon der Exe verwendet
Wenn das so ist, dann wie khalid schon sagte. Aber das kannst du zur Laufzeit nicht mehr ändern, im Gegensatz zu Form.Icon.
> Codejunky <
Ich weis, wie man Icons für die Applikation setzt, ich müsste das Icon wärend die App läuft ändern 😕 Mal sehen, vieleicht kommt noch irgendwas von MS wie das geht...
Hallo bluefisch200,
Ich weis, wie man Icons für die Applikation setzt, ich müsste das Icon wärend die App läuft ändern
das würde zu großer Verwirrung seitens des Benutzers führen.
Die Icons in der neuen Windows 7 Taskbar sind ja gleichzeitig auch QuickLaunch Buttons.
Daher sehe ich keinen Sinn darin, das Icon zur Laufzeit zu ändern.
Daher sehe ich keinen Sinn darin, das Icon zur Laufzeit zu ändern.
Es soll das Icon ja nur kurzzeitig ändern, so dass man z.B. anzeigen kann das neue Mails eingegangen sind, lad dir mal die Beta der Windows Live Suite runter, und schau wie z.B. der Messengar deinen Status darstellt...
Am besten wäre wenn nicht das Icon der exe geändert werden würde, sondern nur "überblendet", aber scheint unter .NET 3.5 noch nichts dergleichen zu haben...
Naja, W7 bringt eine ganze Palette neuer Win32 API Methoden mit. Das diese neuen Methoden noch nicht im FW drin sind, ist ja eigentlich klar. Im FW 4.0 sieht dies wahrschienlich dann schon anders aus.
Das beste wäre es sich ein VS2010 VPC sich zu besorgen, denn da ist das SDK 7.0 drauf. Dann müsste man ein wenig in den neuen Methoden blättern. Es gibt auch auch z.B. die ProgressBar im TaskbarIcon. Diese muss man ja auch ansteuern können.
"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)
Hi,
ich denke, dass die Overlay Icons für Dich interessant sein könnten. Deren Zweck ist es, dem User zu signalisieren, dass in der Anwendung grade etwas passiert ist. Über das Framework kommst du damit natürlich (noch) nicht zum Ziel, aber probier's doch mal mit folgender Win32-API:
HRESULT SetOverlayIcon (HWND, hwnd, HICON hIcon);
Was die Fortschrittsanzeige angeht:
HRESULT SetProgressState(HWND hwnd, TBPFLAG tbpFlag);
HRESULT SetProgressValue(HWND hwnd, ULONG ulCompleted, ULONG ulTotal);
Gruß
Ben
Khalid hat in der Zwischenzeit einen Wrapper gebastelt, inklusive Beispielanwendung, welche genau das macht: Windows 7: Taskbar (ProgressBar, OverlayIcon)
Die Progressbar sollte man dann aber über einen Timer lösen 😉
mfg
SeeQuark
Ahh sehr fein, danke für den Hinweis =)