Witam.
Jak wyświetlić Image w GraphicsView? Przepisałem jeden kod z przykładu, ale mi nie działa.
Muszę napisać program, który m.in. wykrywa, czy kursor znajduje się na czarnym pikselu...
Witam.
Jak wyświetlić Image w GraphicsView? Przepisałem jeden kod z przykładu, ale mi nie działa.
Muszę napisać program, który m.in. wykrywa, czy kursor znajduje się na czarnym pikselu...
Wystarczyla chwila w dokumentacji ;p
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QPixmap *obraz = new QPixmap("C:\chrome.png");
QGraphicsScene *scena = new QGraphicsScene(this);
scena->addPixmap(*obraz);
QGraphicsView *widok = new QGraphicsView(this);
widok->setScene(scena);
widok->setGeometry(50,50,270,270);
}
MainWindow::~MainWindow()
{
delete ui;
}
No ale z żadnej z tych klas nie da się pobrać piksela z wybranej pozycji...
grizz napisał(a)
No ale z żadnej z tych klas nie da się pobrać piksela z wybranej pozycji...
toImage ? Potem już powinieneś sobie poradzić.
A nie ma innego sposobu na pobieranie pikseli? 5 obiektów trzeba zrobić (+QPoint)?
1.Trzeba dokładnie poczytać dokumentację
2.W niej jak byk stoi,że trzeba mieć minimum QGraphicsView z podpiętą doń QGraphicsScene,a na owej scenie leżą pochodne od QGraphicsItem
3.Item od wszekalkich obrazków to QGraphicsPixmapItem
4.Dokumentacja na jego temat wyraźnie pokazuje QGraphicsPixmapItem::pixmap()
5.Dalej to ci dobrze qtMaster podpowiada,jak się dobrać do pikseli
OK, dzięki, czyli wcześniej dobrze myślałem... A możecie mi tylko jeszcze powiedzieć, dlaczego, kiedy piszę to, co Krycho, to mi nie wyświetla obrazka?
Przepraszam, ale muszę napisać projekt na zaliczenie, a że jestem trochę lepszy z programowania od kolegów, to muszę to napisać w qt (a nie mieliśmy programowania obiektowego), a w nim nigdy wcześniej nie pisałem.
Pewnie potemu,że krycho zapomniał o nastawieniu graphicsViewa jako centralnego widgeta okna poprzez
setCentralWidget(widok);
Dalej nie działa... A tekst wyświetla (addText).
Coś gdzieś indziej masz spartolone,bo u mnie się ten obrazek wyświetla.Sprawdź ścieżkę do obrazka