Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Icon laden in WindowsTitle Leiste?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Löwenherz



Anmeldungsdatum: 25.08.2008
Beiträge: 86
Wohnort: auf einer sonnigen Insel :)

BeitragVerfasst am: 26.09.2009, 13:27    Titel: Icon laden in WindowsTitle Leiste? Antworten mit Zitat

kurze Frage:

wie kann ich ein eigenes ICON in die WindowsTitle Bar einfügen ? Z.B. ein 24x24 BMP Bild ? Habe bisher nichts gefunden, außer ein Bild in ein neues GFX Fenster hineinzuladen mit:


Code:
...
Dim bildarray(4 * (24 * 24) + 4) As Byte
Bload "cjpic.bmp", @bildarray(0)
Put (10, 10), bildarray(0)
...


das klappt sehr gut, aber ich brauche was für die WindowsTitle Leiste. Vielleicht kann ja jemand weiterhelfen, wäre schön.

gruß, löwenherz
_________________
Das Leben ist wie eine Pralinenschachtel, man weiß nie, was dort drinnen für tolle wie böse Überraschungen stecken
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Caran



Anmeldungsdatum: 11.03.2007
Beiträge: 290
Wohnort: Lörrach

BeitragVerfasst am: 26.09.2009, 13:50    Titel: Antworten mit Zitat

Mit dem befehl PUT wirst du da nicht sehr weit kommen. Das Icon ändert, bzw. definiert man meines Wissens nach mit der WinApi beim Erstellen des Fensters oder mit Sendmessage() während das Programm läuft.
Also müsstest du in etwa sowas coden:
Code:

SendMessage(hWnd, WM_SETICON, ICON_SMALL, hIcon)

hWnd ist das Handle des FB-Fensters, WM_SETICON ist eine Konstante, die sagt, dass wir das Icon des Programms ändern wollen, ICON_SMALL ist auch eine Konstante, die beschreibt, welches Icon (klein oder groß) wir ändern wollen und hIcon ist ein Handle von einem Icon, dass du vorher mit
LoadIcon laden musst.

Gruß,
Caran
_________________
Eine Erkenntnis von heute kann die Tochter eines Irrtums von gestern sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 27.09.2009, 12:50    Titel: Antworten mit Zitat

http://www.activevb.de/tipps/vb6tipps/tipp0095.html


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 27.09.2009, 14:53    Titel: Antworten mit Zitat

Übrigens: Bildarrays nimmt man schon lange nicht mehr. Heutzutage geht das so:

Code:
Var bild = ImageCreate(24, 24)
Bload "bild.bmp", bild
Put (0, 0), bild
...
ImageDestroy(bild)


Nun zu deinem Problem. Ein eigenes Icon einbauen kannst du so:

Code:
#Include "fbgfx.bi"
#Include "windows.bi"

Screen 18 ' ein Fenster aufmachen

Dim hWnd As HWND
ScreenControl(FB.GET_WINDOW_HANDLE, hWnd)
SendMessage(hWnd, WM_SETICON, ICON_SMALL, LoadImage(NULL, "dein_icon.ico", IMAGE_ICON, 16, 16, LR_LOADFROMFILE))

Sleep
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Löwenherz



Anmeldungsdatum: 25.08.2008
Beiträge: 86
Wohnort: auf einer sonnigen Insel :)

BeitragVerfasst am: 28.09.2009, 17:25    Titel: Antworten mit Zitat

hallo zusammen,

danke für die Hilfen bisher, toll.

nur geht das Beispiel von cherry nicht. Hab's versucht. Oder ich habe etwas wichtiges vergessen ? Ich bin erkältet und leicht benebelt im Kopf, vielleicht bin ich auch nur blind zwinkern

Code:
#INCLUDE "fbgfx.bi"
#INCLUDE "windows.bi"

Screen 18 ' ein Fenster aufmachen

DIM hWnd AS HWND
SCREENCONTROL(FB.GET_WINDOW_HANDLE, hWnd)
SendMessage(hWnd, WM_SETICON, ICON_SMALL, LoadImage(NULL, "batman2.ico", IMAGE_ICON, 16, 16, LR_LOADFROMFILE))

Sleep


wenn ich's richtig verstanden habe brauche ich kein BLOAD für das ICON zu verwenden (*.ico), um ein Icon in der Windowsleiste zu gestalten.

gruß, löwenherz
_________________
Das Leben ist wie eine Pralinenschachtel, man weiß nie, was dort drinnen für tolle wie böse Überraschungen stecken
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 28.09.2009, 17:38    Titel: Antworten mit Zitat

Dein Code geht doch. Hast du dein Icon vielleicht nicht im selben Ordner wie deine Codedatei?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Löwenherz



Anmeldungsdatum: 25.08.2008
Beiträge: 86
Wohnort: auf einer sonnigen Insel :)

BeitragVerfasst am: 28.09.2009, 19:20    Titel: Antworten mit Zitat

mein fehler (puh) war, dass ich ein 32x32 Icon laden wollte, kein 16x16, soviel Erkältung ist nicht gut. denken fällt heute schwer.

Danke, klappt und funzt jetzt! Habe nun ein Batman-Icon in der WindowsLeiste, ich find's zum Schmunzeln. Bringt mich weiter.

tschüss und hatschie
_________________
Das Leben ist wie eine Pralinenschachtel, man weiß nie, was dort drinnen für tolle wie böse Überraschungen stecken
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz