Only because today it is Christmas eve! (normally it shouldn't be a problem for you, to write a small demo app, where you can play around.)
#include <QtGui>
{
Q_OBJECT
public:
p.
setColor(QPalette::Window, Qt
::green);
m_green->setPalette(p);
m_green->setAutoFillBackground(true);
m_green->setMinimumSize(50, 50);
l->addWidget(m_green);
l->setContentsMargins(100, 100, 100, 100);
setLayout(l);
}
virtual ~Main() {}
protected:
qWarning() << Q_FUNC_INFO;
qWarning() << " pos:" << e->pos();
qWarning() << " gpos:" << e->globalPos();
qWarning() << "child:"
<< m_green->mapFromParent(e->pos())
<< m_green->mapFromGlobal(e->globalPos())
<< m_green->mapFrom(this, e->pos());
}
private:
};
int main(int argc, char *argv[])
{
Main w;
w.show();
return a.exec();
}
#include "main.moc"
#include <QtGui>
class Main : public QWidget
{
Q_OBJECT
public:
Main(QWidget *parent = 0) : QWidget(parent) {
m_green = new QWidget(this);
QPalette p = m_green->palette();
p.setColor(QPalette::Window, Qt::green);
m_green->setPalette(p);
m_green->setAutoFillBackground(true);
m_green->setMinimumSize(50, 50);
QHBoxLayout *l = new QHBoxLayout;
l->addWidget(m_green);
l->setContentsMargins(100, 100, 100, 100);
setLayout(l);
}
virtual ~Main() {}
protected:
void mousePressEvent(QMouseEvent *e) {
qWarning() << Q_FUNC_INFO;
qWarning() << " pos:" << e->pos();
qWarning() << " gpos:" << e->globalPos();
qWarning() << "child:"
<< m_green->mapFromParent(e->pos())
<< m_green->mapFromGlobal(e->globalPos())
<< m_green->mapFrom(this, e->pos());
}
private:
QWidget *m_green;
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Main w;
w.show();
return a.exec();
}
#include "main.moc"
To copy to clipboard, switch view to plain text mode
Bookmarks