Cd- Mesaj tarihi: Kasım 28, 2009 Mesaj tarihi: Kasım 28, 2009 Klavyeden multiple input almakla ilgili bi sorunum var fikri olan varsa yardımcı olabilir mi acep? GLUT'ta felan hiç bi şey yapmadan okuyodu bi' kaç tuşa basılı tutunca bunda edemedim bi türlü... Google'da da bişi bulamadım.. Kodun bi parçası şöyle glwidget'tan aldım inputu.. void GLWidget::keyPressEvent(QKeyEvent *event) { switch(event->key()) { case Qt::Key_Escape: QCoreApplication::exit(); break; case Qt::Key_W: camera1.MoveCamera(0.01); break; case Qt::Key_S: camera1.MoveCamera(-0.01); break; case Qt::Key_A: camera1.Rotate(0.05,0,1,0); break; case Qt::Key_D: camera1.Rotate(-0.05,0,1,0); break; case Qt::Key_Left: camera1.RotateAroundPoint(camera1.view, 0.05, 0, 1, 0); break; case Qt::Key_Right: camera1.RotateAroundPoint(camera1.view, -0.05, 0, 1, 0); break; }; updateGL(); }
Anason Mesaj tarihi: Kasım 30, 2009 Mesaj tarihi: Kasım 30, 2009 simdi kodun bu kismina hic gelinmedigini dusunuyorum, problemin biraz sistemle ilgili. QT event neden gelmiyor onu arastirmalisin, qt nin input modulleri varmi varsa yukleniyor mu filan onlara bakmalisin.
Cd- Mesaj tarihi: Kasım 30, 2009 Konuyu açan Mesaj tarihi: Kasım 30, 2009 kodun bu kısmına geliyor buraya gelmese hiç input almazdı zaten. eventlerde geliyo ama bi event gelirken başka bi tuşa basınca öncekini bırakıp o event'i almaya başlıyor. "paralel" çalışmıyo yani.
Gladmir Mesaj tarihi: Aralık 2, 2009 Mesaj tarihi: Aralık 2, 2009 code java olsa diyecektim ki, private static final Object syncLock; synchronized ( syncLock) { ..... { Olan şu ki daha code fragment işini bitirmeden yeni event geliyor ve o execute olmaya başlıyor synch değil demekki aşşağısı. Concurrency ve ilintili şekilde google laman da fayda var. Ya senkron çalışmalısın yada gelen event leri bufferlamalısın.
Öne çıkan mesajlar