SeaMonster131 Temat założony przez niniejszego użytkownika |
[Qt] Wyświetlanie obrazków » 2011-05-17 18:26:56 Przejrzałem parę tematów, ale żaden nie odp na moje pytanie - jak wyświetlić obrazek (po kliknięciu przycisku)? Na początku spróbowałem z QImage i QPainter: void MainWindow::on_pushButton_clicked() { QGraphicsScene * scene = new QGraphicsScene( 0, 0, 800, 600 ); QPainter paint; QImage img; img.load( "img.jpg" ); scene->setBackgroundBrush( Qt::black ); paint.drawImage( 10, 10, img ); ui->graphicsView->setScene( scene ); } Niestety, ale obrazek się nie wyświetla.. Spróbowałem też z QPixmap, ale tam to nie widzę żadnej funkcji, aby ten obrazek wyświetlić :D |
|
malan |
» 2011-05-17 22:29:07 Może jakiś update okna, czy coś podobnego? ;p /edit: Albo ui->graphicsView->setScene( scene ); ui->graphicsView->show(); |
|
SeaMonster131 Temat założony przez niniejszego użytkownika |
» 2011-05-17 22:31:57 To jutro dojdę do tego jak ten update zrobić :) Dosłownie od niedawna Qt zacząłem się uczyć :) # ui->graphicsView->setScene( scene ); ui->graphicsView->show(); Nadal czarny ekran... |
|
pixelmaster |
» 2011-05-18 11:22:25 Jeśli chcesz tylko wyświetlić obrazek to wg. mnie wystarczy sam QPainter.
Do paintera masz dostęp w funkcji paintEvent
protected: virtual void paintEvent( QPaintEvent * event );
void OknoGlowne::paintEvent( QPaintEvent * ) { QImage img( "image.png", "PNG" ); QPainter painter( this ); painter.drawImage( 20, 20, img, 0, 0, - 1, - 1, Qt::AutoColor ); }
dodaj sobie jakiegoś np. bool i po kliknięciu zmień mu wartość, w painterze daj warunek i będzie banglać.
paintEvent jest z tego co kojarzę wywoływany przy każdym odświeżeniu okna (czyli jak po zmianie wartości tego boola się nie pojawi obrazek spróbuj dać mu update();) |
|
SeaMonster131 Temat założony przez niniejszego użytkownika |
» 2011-05-18 19:13:09 Dzięki :) obrazek się wyświetla po kliknięciu przycisku (tak jak napisałeś - musiałem dać jeszcze tam MainWindow::update()) :) Chodziło mi bardziej o to, aby ten obrazek wyświetlić w polu GraphicsView, no ale tak też jest ok :) Aczkolwiek jeżeli ktoś ma jakiś pomysł z tym GraphicsView to pisać, z góry dzięki :) |
|
pixelmaster |
» 2011-05-18 19:34:39 |
|
SeaMonster131 Temat założony przez niniejszego użytkownika |
» 2011-05-18 20:35:20 Hm dzięki :) Lecz i tak nie wiem hah ;) Zrobiłem to inaczej :) Głównie chodziło mi o to, że w GraphicsView są suwaki, ale dorobiłem "ręcznie" suwaki :) Temat zamykam, dzięki za pomoc :) |
|
« 1 » |