mousePressEvent in QLabel
Verfasst: 20. September 2010 14:09
Hallo Gemeinde,
ich habe mit QtDesigner ein Hauptfenster erstellt.
Jetzt lasse ich mir innerhalb der des Fensters in einem QLabel matrixlabel eine Grafik anzeigen
Nun möchte ich wissen wo ich gerade in dem Fenster klicke. Mit der Funktion
wird von dem ganzen Fenster die Position aufgenommen. Ich möchte die Position und den Ursprung aber nur in meinem "Grafiklabel" haben.
Es müsste irgendwie mit "ui.matrixlabel->mousePressEvent" gehen, aber ich komme an die Funktion nicht ohne Fehlermeldung ran[/quote]
ich habe mit QtDesigner ein Hauptfenster erstellt.
Code: Alles auswählen
class myTerm : public QMainWindow
{
Q_OBJECT
public:
myTerm(QWidget *parent = 0);
~myTerm();
Code: Alles auswählen
//Initalisierung
myTerm::myTerm(QWidget *parent)
: QMainWindow(parent)
{
//Das Fenster
ui.setupUi(this);
Code: Alles auswählen
void myTerm::matrix()
{
int array[5][5]={{1,0,1,0,1},{0,1,0,1,0},{1,0,1,0,1},{0,1,0,1,0},{1,0,1,0,1}};
QImage * image = new QImage(5,5,QImage::Format_Indexed8);
image->setNumColors(2);
image->setColor(0, qRgb(255,255,255));
image->setColor(1, qRgb( 0, 0, 0));
for(int i=0;i<5;i++) {
for(int j=0;j<5;j++) {
image->setPixel(i,j,array[i][j]);
}
}
QImage scaledImage = image->scaled(300,300,Qt::IgnoreAspectRatio,Qt::FastTransformation);
QLabel * label = new QLabel(ui.matrixlabel);
label->setPixmap(QPixmap::fromImage(scaledImage));
label->show();
}
Code: Alles auswählen
void myTerm::mousePressEvent(QMouseEvent *mousetaste)
{
position = mousetaste->pos();
QString stringpos = QString("%1 x und %2 y\n").arg(position.rx()).arg(position.rx());
ui.textBrowser_2->insertPlainText(stringpos);
}
Es müsste irgendwie mit "ui.matrixlabel->mousePressEvent" gehen, aber ich komme an die Funktion nicht ohne Fehlermeldung ran[/quote]