Programm in der Startleiste Anzeigen
Übersicht

![]() |
Mathias-KwiatkowskiBetreff: Programm in der Startleiste Anzeigen |
![]() Antworten mit Zitat ![]() |
---|---|---|
huhu, gibt es unter b-max eine möglichkeit sein programm dort hinzupacken wo die uhr ist von windows? ich glaub der ort nennt sich systray bin mir nicht sicher darum geb ich ein bild vom ort wo ich mein, sinn des ganzen ist es das programm im hintergrund laufen zu lassen.
warum ich das gern möchte? ich habe mir ein backup programm geschrieben was dateien von der quelle zum ziel spiegelt, damit ich halt immer ein backup habe man kann auch einstellen wie oft er es vergleichen soll. aber so ein klobiges fenster ist halt nicht unbedingt schön ^^ das bild. |
||
Skype: Anarchie1984
http://projektworks.de/maxbase/ Icq - Erneuert am 21.08.2017 Yahoo - Erneuert am 21.08.2017 |
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wird schon irgendwie möglich sein, schliesslich kann BMax ja auch C Source einbinden ![]() Wie gut ist dein Englisch? Fang mal mit diesem Artikel über Notifications and the Notification Area an. Du wirst nicht drum rum kommen, externe Funktionen zu benutzen. Was dann wiederum bedeutet, dass du mit einer Google-Suche auf anderen Programmierer-Boards zu zB C eine Lösung findest und die dann in dein BMax Programm einbindest. Könnte ein bisschen ein Gebastel werden. Im Prinzip musst du zwei Dinge können: 1. Wissen wie man Windows API Funktionen in BMax einbindet 2. Nach "windows api <dein anliegen>" googeln und dich geduldigst durch unzählige Stackoverflow Threads kämpfen, bis du mal den findest, in dem sich ein User auch dazu erbarmte, die Frage zu beantworten Gibt schon einige Leute hier, die dir bei Punkt 1 helfen können. Also falls du dazu noch Fragen hast (ich gehe jetzt zwar irgendwie davon aus, dass du das auch schon kannst): ruhig raus damit. Aber dass mal jemand spezifisch die systray-Funktionalität behandelt hätte, daran könnte ich mich jetzt nicht mehr erinnern ![]() mfG |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich werd mich genau um die 2 punkte mal bemühen, allerdings erst heut abend da dann die zeit ausreicht.
ich kann schon mal soviel sagen ich glaube das punkt 1 das kleiner übel sein wird, den punkt 2 hätte was mit c zu tun und das kann ich null demnach auch kein java da es ja ähnlich sein soll, gut java steht hier so oder so ausser frage. dennoch erst mal danke. vieleicht schaffe ich es ja falls nicht bleibt das fenster einfach wo es ist ![]() danke für die antwort |
||
Skype: Anarchie1984
http://projektworks.de/maxbase/ Icq - Erneuert am 21.08.2017 Yahoo - Erneuert am 21.08.2017 |
![]() |
count-doku |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du hast Glück, und musst nach keinem der beiden Punkte von Holzchopf suchen. Ich habe genau das was du suchst schonmal in Blitz Max gemacht.
Grundsätzlich brauchst du eine C Datei, die dann die Windows API Funktionen benutzt um dein Programm in den Tray zu bringen. Danach kannst du dann ja dein Blitzmax Fenster ausblenden (mit den Standard BMax Funktionen). Nachfolgend alle Dateien, inkl. eines kleinen Demo Programmes. Wenn du die runterlädst und mit den jeweiligen Namen speicherst, müsstest du einen Mini Demo haben. Genauer ein Fenster wird geöffnet und ein Tray Icon angelegt. Wenn du das Fenster mit dem [X] schließt, minimiert es sich nur in den Tray. Doppelklick auf das Tray Icon zeigt das Fenster wieder an. Rechtsklick auf das Tray Icon beendet das Programm. Wenn du da eigene/andere Events abfangen willst musst du halt im TrayManager Callback andere Werte abfangen (dafür in der WinApi schauen). Da kannst du dann natürlich auch ein Context Menu oder ähnliches machen. tray.c Code: [AUSKLAPPEN] #include "windows.h"
void __windowToTray(HWND window,int ID,const char *tip[],LPCTSTR iconFile) { NOTIFYICONDATA nid; nid.cbSize = sizeof(NOTIFYICONDATA); nid.hWnd = window; nid.uID = 0; nid.uFlags = NIF_ICON|NIF_MESSAGE|NIF_TIP; nid.uCallbackMessage = WM_USER+ID; nid.hIcon = LoadImage(NULL,iconFile,IMAGE_ICON,0,0,LR_LOADFROMFILE|LR_DEFAULTCOLOR); strcpy(nid.szTip,tip); Shell_NotifyIcon(NIM_ADD,&nid); } void __windowFromTray(HWND window,int ID,const char *tip[],LPCTSTR iconFile) { NOTIFYICONDATA nid; nid.cbSize = sizeof(NOTIFYICONDATA); nid.hWnd = window; nid.uID = 0; Shell_NotifyIcon(NIM_DELETE,&nid); } demo.bmx BlitzMax: [AUSKLAPPEN] SuperStrict icon.ico Komplett Download aller nötigen Dateien: https://www.blitzforum.de/upload/file.php?id=13386 lg, count-doku |
||
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
echt nett von dir danke viele male! | ||
Skype: Anarchie1984
http://projektworks.de/maxbase/ Icq - Erneuert am 21.08.2017 Yahoo - Erneuert am 21.08.2017 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group