Ist mein Button SW_HIDE?
-
Ich Programmiere gerade Minesweeper (nightmareMines) mit 2014 Feldern und 800 Mienen (war mühsam die Felder zu programmieren... 2k Quellcodezeilen
nein so doof war ichnicht 2D-Array HWND) und möchte folgendes realisieren.Wenn ich einen Button klicke verschwinden im besten falle eine menge anderer Buttons. Um die herum, die stehen bleiben, sind Zahlen. wenn um eine Zahl kein Button mehr ist, soll sie verschwinden.
Ich kann ja anhand von ShowWindow und deren (die funktion) Rückhabewert ermitteln ob ein Fenster schon SW_HIDE war, aber bei jedem klick jeden button einmal unsichtbar und wieder sichtbar machen, falls er es war.... is nich soooo geil jetz oder?
-
IsWindowVisible () ???
gibt allerdings nur zurück, ob das Fenster den Style WS_VISIBLE hatte...
wenn nicht, gibt die Funktion 0 zurück
wenn doch, dann gibt sie etwas anderes als 0 zurück (also != 0)
-
Bringt mir gar nichts...
Danke trotzdem...BitWax schrieb:
IsWindowVisible () ???
Du stellst es so hin als ob das jeder wissen sollte... Ich würd enicht fragen, hätt ichs gewusst.
Noch Vorschläge?
-
lippoliv schrieb:
BitWax schrieb:
IsWindowVisible () ???
Du stellst es so hin als ob das jeder wissen sollte... Ich würd enicht fragen, hätt ichs gewusst.
Ich stells nicht so hin, du interpretierst einfach zu viel

hab ich gesagt "das weiß doch jeder"? nur weil ich drei fragezeichen, die genau so gut "hilft dir das vllt?" heißen können, hingeschrieben habe
-
Ja ich dachte halt wirklich das die ??? sowas wie "was ist denn mit dir los" heißen...
Ok Danke, aber leider hats nicht gewirkt... Gibt es wirklich nur ShowWindow?
Wird glaube ich unperformant (ists warscheinlich jetzt schon)
-
lippoliv schrieb:
Ich kann ja anhand von ShowWindow und deren (die funktion) Rückhabewert ermitteln ob ein Fenster schon SW_HIDE war, aber bei jedem klick jeden button einmal unsichtbar und wieder sichtbar machen, falls er es war.... is nich soooo geil jetz oder?
Tut mir leid ich versteh dein Problem nicht. Entweder machst du den Button sichtbar oder unsichtbar. Wieso musst bei jeden klick jeden button einmal unsichtbar und wieder sichtbar machen, falls er es war? Du kannst doch bei Minessweeper einen button garnicht wieder sichtbar machen. Sie verschwinden doch nur und kommen nicht wieder

schirrmie
-
Lies den ersten Post,
wenn um eine Zahl alle Buttons unsichtbar sind, soll diese Zahl auch verschwinden, damit man später nur noch die Zahlen stehen hat, in deren umfeld auch ein Button ist, damit man sofort sieht worauf man noch achten muss.Dazu muss ich feststellen ob der Button sichtbar ist, und mit ShowWindow kann ich ihn unsichtbar mahcne und anhand des Returns merken ob das richtig war...
Das ist aber richtig krank, weil das unperformant ist, leider kann ich auch nicht einfach SendMessage da es keine passende Nachricht gibt.
Also was soll ich machen?
-
Seit wann verschwinden denn Zahlen bei Minesweeper (kann mich auch irren, lang nicht mehr gespielt!) Aber um eine Zahl können doch max. 8 Buttons sein, d.h. du musst doch nicht alle durchgehen.
schirrmie
-
Versuchs mal mit GetWindowPlacement().
The GetWindowPlacement function retrieves the show state and the restored, minimized, and maximized positions of the specified window.
BOOL GetWindowPlacement(
HWND hWnd, // handle of window
WINDOWPLACEMENT *lpwndpl // address of structure for position data
);Parameters
hWnd
Identifies the window.
lpwndpl
Points to the WINDOWPLACEMENT structure that receives the show state and position information.
Before calling GetWindowPlacement, set the length member of the WINDOWPLACEMENT structure to sizeof(WINDOWPLACEMENT).
GetWindowPlacement fails if lpwndpl->length is not set correctly.Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
-
Doch, für jede Zahl 8 Buttons...
Ja das ist relativ komfortabel, ich schau noch mall nach...
Nein sie bleiben, aber jetzt weiß ich auch, warum das bei mir so komisch ist...Ich decke immer alles auf, auser welche, die in minen eingeschlossen sind.
Ich darf natürlich nur bei 0 die felder aufdecken, bei denen 0 minen im unfeld sind, und die zusammenhängen.