C++ 当QLabel在Qt中获得QImage时,如何设置QSpinBox?
我的C++ 当QLabel在Qt中获得QImage时,如何设置QSpinBox?,c++,qt,C++,Qt,我的QWidget中有QSpinBox,我只想在QLabel获取QImage时设置它。是否有任何功能或工具可用于在任何条件下设置QSpinBox 下面是我的工作经历 首先,我声明一个QSpinBox对象并设置它的最大值 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } 我有一个QPu
QWidget
中有QSpinBox
,我只想在QLabel
获取QImage
时设置它。是否有任何功能或工具可用于在任何条件下设置QSpinBox
下面是我的工作经历
首先,我声明一个QSpinBox
对象并设置它的最大值
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
我有一个QPushButton
,按下它,用户可以加载图像,图像将显示在QLabel
中
void MainWindow::on_Browse_clicked()
{
QFileDialog dialog(this);
dialog.setNameFilter(tr("Images (*.png *.xpm *.jpg)"));
dialog.setViewMode(QFileDialog::Detail);
QString imagefileName = QFileDialog::getOpenFileName(this, tr("Open File"), "Given_Path", tr("Images (*.png *.xpm *.jpg)"));
if(!imagefileName.isEmpty())
{
image= QImage(imagefileName);
ui->label->setPixmap(QPixmap::fromImage(image));
spinbox= new QSpinBox(this);
QPoint p(100,300);
spinbox->move(p);
}
}
但它没有显示任何QSpinBox
我是如何尝试获取的
非常感谢您的帮助。您可以尝试
QSpinBox::setEnabled(bool)
函数,其中QSpinBox::setEnabled(true)
将启用您的SpinBox
,同样QSpinBox::setEnabled(false)
将禁用此功能
我认为您最好在main窗口中声明QSpinBox
函数并将其禁用。所以你可以试试这个
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
spinbox= new QSpinBox(this);
QPoint p(100,300);
spinbox->move(p);
spinbox->setEnabled(false); //here disabled QSpinBox
}
而在浏览点击功能里面,你可以放在启用状态
void MainWindow::on_Browse_clicked()
{
QFileDialog dialog(this);
dialog.setNameFilter(tr("Images (*.png *.xpm *.jpg)"));
dialog.setViewMode(QFileDialog::Detail);
QString imagefileName = QFileDialog::getOpenFileName(this, tr("Open File"), "Given_Path", tr("Images (*.png *.xpm *.jpg)"));
if(!imagefileName.isEmpty())
{
image= QImage(imagefileName);
ui->label->setPixmap(QPixmap::fromImage(image));
spinbox->setEnabled(true); // Here enabled QSpinBox
}
}
希望它能对您有所帮助。如果它真的对您有帮助,请不要忘记将此答案标记为正确且有用。