Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » key events

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
26.05.2005, 10:25 Uhr
~Schu
Gast


Hallo !

Komme von der Java-Schiene und progge noch nich allzu lange mit Visual c++ rum !!
Würde daher (und weil ich es gerade brauche) gerne wissen, wie denn key events (und evtl. auch MouseEvents) in VC++ gehandelt werden bzw. ob man dafür noch gesondert Bibiotheken nachladen muss ???
Gibt es für die key events zur Verfügung stehenden Funktionen tec. eigentlich eine Doku !?

Thanx a lot....Schu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.05.2005, 10:53 Uhr
Spacelord
Hoffnungsloser Fall


Hallo,
du musst schon etwas konkreter werden was du machen möchtest.
Auf niedrigstem Niveau kannst du die entsprechenden Windowsnachrichten WM_KEYDOWN etc. und WM_MOUSEMOVE,WM_LBUTTONDOWN etc. bearbeiten.
Meistens ist es aber unnötig auf diesem LowLevel Niveau zu arbeiten. Nen Buttonklick oder ne Eingabe in nem Editfeld werden auf nem abstrakterem Level behandelt.

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.05.2005, 11:07 Uhr
~Schu
Gast


Nun ja...ich mache über eine bereitgestellte Schnittstelle (FSUIPC) ein bissl mit dem FS2004 rum und möchte dort auf Tastendruck die Position, z.B. des towers ein bissl verändern !!

Momentan fang ich das mit "if (ch == 'k' )" u.ä. ab, aber das ist weder schön, noch wirklich effizient (da jede Eingabe auch noch mit <Enter> bestätigt werden muss, da allet über I/O läuft) !

Viel netter wäre es doch aber, wenn man z.B. sagen kann if (keyPressed(Key)) oder ähnliches...und da weiß ich nu leider gar nicht, was VC++ da so zu bieten hat !!

mfg
Schu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.05.2005, 11:35 Uhr
Spacelord
Hoffnungsloser Fall


Sorry aber ich kenne weder die Schnittstelle noch FS2004 und kann mir auch nicht vorstellen wie dein Projekt aussieht!?
Ist dass ne MFC Anwendung die den Flugsimulator steuert ??
Oder ne Konsolenanwendung oder ne Plugin Dll .....?
Da muss ich passen....
Was ich spontan aus deinem if (keyPressed(Key)) machen würde ist nen:



C++:
#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
    while (true)
    {
        if(_kbhit())
        {
            char c =getch();

            switch (c)
            {
            case 'a':
                {
                    cout<<"a gedrueckt!"<<endl;
                    break;
                }
            case 'b':
                {
                    cout<<"b gedrueckt!"<<endl;
                    break;
                }
            default:
                cout<<"Irgendwas gedrueckt"<<endl;
            }
        }
    }
    return 0;
}




Ist natürlich alles andere als MFC aber ich kann mir wie gesagt unter deinem Vorhaben mal rein garnichts vorstellen .

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.05.2005, 15:08 Uhr
~Schu
Gast


ist ne MFC-Anwendung...mit allem drum und dran
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.05.2005, 15:18 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Für dein Tastendrücken sowas in der Art

Die Methoden die für deine Mouseklickes und Bewegungen überladen werden müssen kannst du direkt mit dem Klassenassi überladen... Einfach klassenassi öffnen und die Gewünschte abzufangende Nachricht auswählen (WM_MOUSEMOVE und wie die alle mehr oder weniger selbsterklärend heissen)
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.05.2005, 16:16 Uhr
~Schu
Gast


Okay...vielen Dank erst einmal, werd's gleich mal ausprobieren !!

Achso...ich hab auch mal was von sog. "keyboard Hook's" gehört...wäre das auch ne möglich eVariante oder ist davon eher abzuraten !?!?

mfg
schu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.05.2005, 16:22 Uhr
Spacelord
Hoffnungsloser Fall


Du brauchst keinen Keyboard Hook.
Jeder Tastendruck wird ohnehin von deiner Nachrichtenschleife verarbeitet.
Zeig doch mal nen bisschen Code und schilder genau was du machen möchtest.
Das ist hier sonst das reinste Ratespiel.

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
26.05.2005, 16:39 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

Das ist hier sonst das reinste Ratespiel


Ist deine Glaskugel auch schon wieder in der Werkstatt?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
26.05.2005, 16:45 Uhr
Spacelord
Hoffnungsloser Fall


Yep,meine hellseherischen Fähigkeiten lassen mehr und mehr nach.
Das einzige was wir mittlerweile wissen ist dass es ne MFC Anwendung mit allem drum und dran ist.
Das schränkt die Möglichkeiten natürlich enorm ein .

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: