Jak zrobić obiekt typu QGraphitcsView tylko do odczytu?



  • Witam. Tak jak w temacie napisane potrzebuję zrobić obiekt QGraphitcsView tylko do odczytu. Potrzebuję aby w pewnym momencie gry okno było nieaktywne na żadne klikania i przenoszenie danych rzeczy znajdujących się tam.
    Próbowałem zaimplementować funkcję ui->obiekt->setInteractive(false);
    lecz to nie działa...
    Proszę o jakaś pomoc i z góry dzięki za odp.


  • Moderators

    @
    ui->obiekt->setEnabled(false);
    @

    Ale to chyba nie da efektu, jakiego się spodziewasz. Można jeszcze zrobić 2 tricki: przechwycić QMouseEventy i zablokować sygnały. Ta druga opcja:
    @
    ui->obiekt->blockSignals(true);
    @



  • Przy tej funkcji ui->obiekt->setEnabled(false);
    program się zawiesza
    a przy drugiej funkcji nic się specjalnie nie dzieje...
    Obiekt QGraphitcsView w moim programie jest planszą do gry w statki. Jest zaimplementowana gra przez sieć i chciałbym zrobić coś takiego że jak jeden użytkownik ustawia statki lub próbuje trafiać to inny ma zablokowaną planszę...


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.