Anzeige:
Ergebnis 1 bis 5 von 5

Thema: methoden mit funktionstasten aufrufen

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.08.2004
    Beiträge
    31

    methoden mit funktionstasten aufrufen

    hallo,
    ich möchte, mit den funktionstasten f1 -f12 dialoge bzw methoden aufrufen. wie heißt die signal/slot geschichte dazu? bekomme das nicht hin...
    vielen dank

    hanswurst

  2. #2
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Sprichst du von Qt?

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  3. #3
    Registrierter Benutzer Avatar von Gartenzwerg
    Registriert seit
    26.06.2003
    Beiträge
    75
    hi,
    ich nehme mal an, dass er Qt meint, da er von signals/slots spricht.
    Hierfür gibt es jedoch keine Signale. Du musst dafür auf Events reagieren. Dazu musst du in deiner Klasse die Funktion "bool event(QEvent* ev);" [protected] überladen.
    z.B.
    Code:
    bool MainWindow::event(QEvent* ev)
    {
      switch(ev->type())
      {
        case QEvent::KeyRelease:
        {
          QKeyEvent* keyEvent = static_cast<QKeyEvent*>(ev);
    
          switch(keyEvent->key())
          {
             case Qt::Key_F1:
             {
               // mach irgendetwas
             }
             break;
             
             case Qt::Key_F2:
             {
               // mach irgendetwas
             }
    
             // ...
    
             break;
    
             default:
               break;
          }
        }
        break;
        
        default:
        break;
      }
    
      return QMainWindow::event(ev);
    }
    Gartenzwerg
    http://sebastian.familiegibb.de | GiKraSoft | Nachwachsende Rohstoffe
    Ich denke niemals an die Zukunft - sie kommt früh genug.
    Albert Einstein

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Zitat Zitat von Gartenzwerg
    Dazu musst du in deiner Klasse die Funktion "bool event(QEvent* ev);" [protected] überladen.
    Nein, dafür gibt es schon spezielle Methoden für Key Events.
    keyPressEvent und keyReleasEvent in QWidget

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  5. #5
    Registrierter Benutzer Avatar von Gartenzwerg
    Registriert seit
    26.06.2003
    Beiträge
    75
    danke, das spart dann min. eine switch-Anweisung, funktioniert dann im Grunde aber genauso

    Gartenzwerg
    http://sebastian.familiegibb.de | GiKraSoft | Nachwachsende Rohstoffe
    Ich denke niemals an die Zukunft - sie kommt früh genug.
    Albert Einstein

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •