JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=ccddf55f52f7f44d589151ce4ee69d76Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Buttons mit Icon

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
magigman
Junior JLI'ler



Anmeldedatum: 25.09.2007
Beiträge: 87

Medaillen: Keine

BeitragVerfasst am: 08.02.2010, 15:07    Titel: Buttons mit Icon Antworten mit Zitat

Hallo!!!
Ich möchte gerade ein Programm schreiben, bei dem Icons auf den Buttons sind. Ich mache das ganze mit "Visual C++ 2008 Express" und habe mit Hilfe des Manifesttools eine manifest.xml verwendet, um den Style meiner Buttons XP anzupassen. Jetzt habe ich mit:
CPP:
SendMessage(hButton1,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon);
Ein Icon auf mein Button gezeichnet. Das klappt alles super, aber der Button ist nun wieder im alten '95 Style. Bitte um schnelle Hilfe, Danke bereits im Vorraus!!!
_________________
Wer einen Rechtschreibefehler findet, darf ihn behalten, in ein Regal stellen und jedem der vobei geht sagen, dass ER ihn gefunden hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 09.02.2010, 11:17    Titel: Antworten mit Zitat

Der ButtonStyle muss für die XP-Ansicht auf Flat gesetzt sein. Es kann sein, dass derStyle durch BM_SETIMAGE zurückgesetzt wird.
Versuche mal folgendes:
CPP:
SendMessage(hButton1,BM_SETSTYLE,BS_FLAT|BS_ICON,(LPARAM)TRUE);
SendMessage(hButton1,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon);

_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
magigman
Junior JLI'ler



Anmeldedatum: 25.09.2007
Beiträge: 87

Medaillen: Keine

BeitragVerfasst am: 09.02.2010, 14:38    Titel: Antworten mit Zitat

nein, das geht leider nicht...
_________________
Wer einen Rechtschreibefehler findet, darf ihn behalten, in ein Regal stellen und jedem der vobei geht sagen, dass ER ihn gefunden hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
magigman
Junior JLI'ler



Anmeldedatum: 25.09.2007
Beiträge: 87

Medaillen: Keine

BeitragVerfasst am: 10.02.2010, 14:50    Titel: Antworten mit Zitat

scheinbar gibt es da keine wirkliche lösung, da es ein bug in den common controls ist. also habe ich mir überlegt den button einfach zu überzeichnen.
wenn ich das aber mit DrawIcon() mache, verschwindet der darunter liegende button... bitte helft mir... Rolling Eyes
_________________
Wer einen Rechtschreibefehler findet, darf ihn behalten, in ein Regal stellen und jedem der vobei geht sagen, dass ER ihn gefunden hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 11.02.2010, 15:24    Titel: Antworten mit Zitat

ggf.: Versuche mal das Projekt gegen eine neuere Versionsnummer der Common Controls zu linken - und / oder verwende eine größere Versionsnummer im Symbol _WIN32_WINNT / WINVER / _WIN32_IE

Using the Windows Headers
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
magigman
Junior JLI'ler



Anmeldedatum: 25.09.2007
Beiträge: 87

Medaillen: Keine

BeitragVerfasst am: 11.02.2010, 15:37    Titel: Antworten mit Zitat

funkt alles nicht Sad iwie muss das doch gehen...
_________________
Wer einen Rechtschreibefehler findet, darf ihn behalten, in ein Regal stellen und jedem der vobei geht sagen, dass ER ihn gefunden hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 12.02.2010, 07:16    Titel: Antworten mit Zitat

Mehr fällt mir momentan nicht ein.
Möglicherweise solltest du das ganze mal mit einer anderem Sprache versuchen. GUI-Programmierung noch in C++ zu machen finde ich nicht unbedingt mehr nötig, das geht sehr viel einfacher z.B. mit DotNet und C#.
Die WinForms-API ist sehr ausgereift und zuverlässig, noch cooler finde ich allerdings die neue WPF-API, wobei die Lernkurve dort recht steil ist.
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
magigman
Junior JLI'ler



Anmeldedatum: 25.09.2007
Beiträge: 87

Medaillen: Keine

BeitragVerfasst am: 18.02.2010, 17:02    Titel: Antworten mit Zitat

ich hab einfach eigene buttons verwendet Cool Wink
_________________
Wer einen Rechtschreibefehler findet, darf ihn behalten, in ein Regal stellen und jedem der vobei geht sagen, dass ER ihn gefunden hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
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.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum