wieder einmal wrappen...("read" fehler ohne kompiliermeldungen)
-
Blackhawk schrieb:
wolltet ihr den wrapper haben?

Willst du den haben:
(Ich sagte ja ich mach mal ein Tut.)/******************************************************************/ /** **/ /** WinAPI - Windows/Controls Wrapper Vorlage **/ /** File: wrapper.h **/ /** Designed für Blackhawk **/ /** **/ /******************************************************************/ #ifndef WRAPPER_H #define WRAPPER_H #include <windows.h> /******************************************************************/ /** Alle Klassen etc. steht ein kleines 'w' vor. **/ /******************************************************************/ /*:::::: Als erstes machen wir unsere Basis Klasse dem Compiler bekannt */ class wBasisControl; /*:::::: Wir brauchen paar Konstanten um zu sehen welcher Controltype gefragt ist */ const int wMasterWindow = 1; const int wOwnerWindow = 2; const int wChildWindow = 3; const int wStandardControl = 4; /*:::::: Nun werden wir einige Typen definieren um Funktionszeiger zu speichern für die Events */ typedef void (*wMouseEvent)(wBasisControl*, int, int, WPARAM); /* void(Object,X,Y,Key_Flags) */ typedef void (*wKeyEvent) (wBasisControl*, int, LPARAM); /* void(Object,Virtual_Key,Key_Data) */ typedef void (*wEvent) (wBasisControl*); /* void(Object) für Events ohne Parameter */ typedef void (*wProcEvent) (wBasisControl*, UINT, LPARAM, WPARAM); /* für sonstige Events mit Parameter */ /*:::::: DIE STATIC GLOBALE WndProc für alle Klassen, hier declardiert */ static LRESULT CALLBACK wBasisWndProc (HWND, UINT, WPARAM, LPARAM); /*:::::: Um einen besseren Überblick zu erhalten, stecken wir die Getter und Setter Funktionen in Klassen */ /*:::::: Die Getter Klasse "->Get->Funktion" */ class wGetter { private: wBasisControl* obj; /* hier einen Zeiger für die Controlklasse */ public: wGetter(wBasisControl*); ~wGetter() {} LPCSTR Caption(); int Width(); int Height(); int Top(); int Left(); long Style(); long StyleEx(); /* weitere könnt ihr dann ergänzen, bzw. in abgeleiteten Klassen ergänzen für diverse Controls */ }; /*:::::: Nun folgt der entsp. Setter, auch diesen dann Ergänzen */ class wSetter { private: wBasisControl* obj; /* wieder der Zeiger zur Controlklasse */ public: wSetter(wBasisControl*); ~wSetter() {} void Caption(LPCSTR); void Width(int); void Height(int); void Top(int); void Left(int); void Style(long); void StyleEx(long); }; /*:::::: Jetzt gehts rund, es folgt die BasisKlasse: */ class wBasisControl { protected: int ClassType; HWND Handle; HWND Parent; HINSTANCE HInstance; long UserData; WNDPROC DefaultWndProc; /* Hier wird sicher noch was folgen, wenn ihr es erweitert */ public: wBasisControl(); wGetter* Get; wSetter* Set; HWND GET_Handle(); HWND GET_Parent(); HINSTANCE GET_Instance(); long GET_UserData(); void SET_UserData(long); int GET_ClassType(); WNDPROC GET_DefaultWndProc(); virtual ~wBasisControl(); wMouseEvent OnMouseMove; wMouseEvent OnMouseDown; wMouseEvent OnMouseUp; wMouseEvent OnDoubleClick; wKeyEvent OnKeyDown; wKeyEvent OnKeyUp; wProcEvent OnMessage; wEvent OnCreate; /* Nah, hier werdet ihr sicherlich noch einiges rein pusten, aber dann auch Basisproc erweitern */ }; /*:::::: Soooo, nun kommt unser erstes Control, das Window ;-) */ class wWindow : public wBasisControl { private: bool isWindow; /* somethink */ public: HWND FastWindowCreate(HINSTANCE, HWND, int, int, LPCSTR, int); /* Hinst.,ParentHandle, width, height, titel,classtype */ ~wWindow(); /* Hier könnt ihr euch dann austoben */ }; class wButton : public wBasisControl { private: bool isButton; public: HWND InitButton(HWND, int, int, int, int, LPCSTR); /* Handle,left,top,width,height,Caption */ ~wButton(); }; /****************************************************************************/ /** So, nun könnt ihr euch austoben und fleisig Controls in Klassen packen **/ /****************************************************************************/ #endifBin mit dem Tut. aber noch nicht fertig, muß ja auch noch was anderes machen
die cpp datei dazu ist aber fertig und funktionstüchtig, muß nur noch alles Überarbeitet werden.
-
häkchen an automatisch einloggen ?!
-
DjFishbone schrieb:
häkchen an automatisch einloggen ?!
Was meinst du damit?
-
Ist das ein "Tutorial" dafür wie man schlechte Wrapper schreibt?
-
rofl. schrieb:
Ist das ein "Tutorial" dafür wie man schlechte Wrapper schreibt?
Ja, genau, gut eraten (erkannt ehr weniger)
-
MichaM. schrieb:
rofl. schrieb:
Ist das ein "Tutorial" dafür wie man schlechte Wrapper schreibt?
Ja, genau, gut eraten (erkannt ehr weniger)
War nicht schwer zu erkennen.

-
dann gib mal deinen her...
-
hab ich gesagt das ich einen habe?

-
eben.. also mach dus mal

-
ok mach ich
