Probleme mit Farb-Dialog-Box
-
hallo zusammen,
ich hab nen ziemlich blödes problem .. in meinem programm hab ich einen button, der die color-dialog-box öffnet und man sich eine farbe aussuchen kann.
jetzt passiert folgendes bei mir: sobald ich das programm öffnen will, öffnet sich erst der farb-dialog und ich wähle z.b. rot und drücke ok. erst dann öffnet sich das programm. wenn ich dann innerhalb des programmes den farb-dialog öffne, ist rot als ausgewählte farbe. und egal, welche farbe ich dann auswähle und ok drücke: ich kann dann nur in rot malen.
da gibt es also ein problem mit dem aufruf der funktion.
könnt ihr da so ne ferndiagnose geben?
ich habe in der einen datei
rgbCurrent
als rückgabewert einer funktion .. definiert ist das als
static DWORD rgbCurrent;
was muss ich da als rückgabewert der funktion angeben? bis jetzt steht da nix ..
in der anderen datei, in der das dann aufgerufen wird (die header-datei der anderen ist included), hab ich bis jetzt folgendes stehen:void giveColor() { PMObject* bo = new PMObject(); COLORREF col = bo->loadColor(); int red, green, blue; red = GetRValue(col); green = GetGValue(col); blue = GetBValue(col); paint[0] = red / 255; paint[1] = green / 255; paint[2] = blue / 255; }
.. und an der stelle, an der diese funktion giveColor() aufgerufen wird, müsste auch stimmen ..
-
Debugger benutzen.
Bye, TGGC (Pipe my World.)
-
den benutz ich ja ..
-
Dann müsstest du doch merken, wo die falsche Farbe herkommt.
Bye, TGGC (Pipe my World.)
-
du hast mein problem nicht verstanden, glaub ich .. aber ich hab den fehler gefunden, weiss nur nicht, wie ich ihn ändern soll ..
-
Das Problem ist, die Zeichen-Farbe wird rot gesetzt anstatt der gewählten Farbe?
Bye, TGGC (Pipe my World.)
-
das problem war, dass ich die fkt doch an falscher stelle aufgerufen habe .. und diese fabr-dialog-box eben vor start des programms kam und die dort festgesetzte farbe während des programmes nicht mehr zu ändern war .. egal, ob ich vorher rot oder grün oder so ausgewählt habe .. wie gesagt, problem gefunden, aber noch nicht gelöst
..