Olen vasta harjoittelija ja minulla on yksi ongelma, kun rupean harjoittelemaan C++:lla. Missä tiedostossa nuo GCC:ssä yleiskontrollit ovat?
Mitä tarkoitat yleiskontrolleilla?
Hiiren kontrollit. Jos löytyisi GCC:ssä jokin file, jossa on määritelty nuo kontrollit.
Ajattelisin että hiiri ei sisälly C++ standardeihin, joten pitäisi tietää vähän missä ympäristössä ja millä kirjastoilla olet C++-ohjelmaa tekemässä.
Esim. aihetta liippaava Q&A Linuxissa
Olettaisin myös että hiiri on käyttiksestä riippumatta vähän eri asia konsoliohjelmassa kuin graafisessa ohjelmassa.
Olen tehnyt WIDOWS-ohjelmat nyt vanhalla kääntäjällä (BC502). Siinä kontrollit ovat erinimisiä.
Haluan vain tehdä alusta pitäen grafiikkafunktiot itse. Päätin siirtyä BC502:sta GCC kääntäjään.
ESIM:
/* This is where all the input to the window goes to */ LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) { switch(Message) { /* Upon destruction, tell the main thread to stop */ case WM_DESTROY: { PostQuitMessage(0); break; } /* All other messages are processed using default procedures */ default: return DefWindowProc(hwnd, Message, wParam, lParam); } return 0; }
Noita kontrolleja löytyy varmasti joka lähtöön. Mutta tarvitsen vain vakioiden nimet.
WinAPI:lla puljaaminen on kyllä hullua hommaa, mutta dokumentaatiota löytyy Microsoftilta, esimerkiksi:
https://docs.microsoft.com/en-us/windows/win32/winmsg/windowing
https://docs.microsoft.com/en-us/windows/win32/inputdev/mouse-input-notifications
Tai jos nyt tiedostosta haluat yrittää kaivella, niin katso windows.h ja winuser.h ja mitä ikinä näistä #include-riveillä liitetään. Vakion nimellä googlaamalla löytyy yleensä Microsoftin dokumentaatio, miten sitä voi käyttää.
Tosi paljon helpommin toimii esim. SDL vapaaseen piirtelyyn (DOS-henkeen) tai käyttöliittymään jokin Qt/GTK/muu.
Ja olen tehnyt yksikön, joka on samanlainen käyttää, kuin Turbo C++:n legendaarinen BGI. Nuo linkit ovat minulle elintärkeitä. Kiitos linkeistä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.