子窗口直接修改父窗口对象,比 signal - slot 要方便得多。
Qt 代码: 子窗口调用父窗口_Jan5的博客-CSDN博客
imagewidget.cpp
#include "mainwindow.h"
MainWindow *mainWindow = (MainWindow*)parentWidget()->parentWidget()->parentWidget();
QRgb RGB = imgtemp.pixel(startPnt.x(),startPnt.y());
if (mainWindow->checkBox_color_border->isChecked()) {
pen.setColor(RGB);
painter.setPen(pen);
QPalette plt = mainWindow->toolButton_color_border->palette();
plt.setColor(QPalette::ButtonText, pen.color());
mainWindow->toolButton_color_border->setPalette(plt);
}
if (mainWindow->checkBox_color_fill->isChecked()) {
brush.setColor(RGB);
painter.setBrush(brush);
QPalette plt = mainWindow->toolButton_color_fill->palette();
plt.setColor(QPalette::ButtonText, brush.color());
mainWindow->toolButton_color_fill->setPalette(plt);
}
缺点:不能使用全局变量,有时候一级括号外面都不行。