Pertanyaan rendering QGraphicsView/QGraphicsScene

Saya menggunakan pasangan QGraphicsScene/QGraphicsView di aplikasi saya. Saya telah membuat subkelasnya untuk tujuan saya. Cuplikan kode yang menghasilkan pasangan ada di bawah:

itsScene = new QGraphicsScene;
itsView = new QGraphicsView;
itsView->setParent(itsCanvas);

itsView->setGeometry(20,20,1700,720);
itsView->setBackgroundBrush(Qt::black);
itsView->setAlignment(Qt::AlignTop);
itsView->setScene(itsScene);

Setelah menambahkan beberapa widget ke QGraphicsScene, snapshot UI akhir aplikasi saya adalah di bawah ini: Snapshot UI Aplikasi Di sini pertanyaan saya adalah mengapa ada ruang kosong di atas gambar? Apa yang menyebabkan hal ini? Saya menggunakan beberapa koordinat negatif untuk widget saya. Apakah ada hubungannya dengan itu?


person onurozcelik    schedule 01.07.2010    source sumber


Jawaban (1)


Koordinat negatif mungkin menjadi penyebabnya. QGraphicsScene menghitung persegi pembatasnya dari menggabungkan batas semua item di dalamnya.

Jika Anda mengetahui batasan adegan Anda, hubungi setSceneRect untuk memperbaikinya hingga lurus yang diketahui. Dengan cara ini item grafis yang ditempatkan di luar batas tidak akan menyebabkan pemandangan meluas melebihi apa yang Anda inginkan.

person Stephen Chu    schedule 01.07.2010