首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >[Qt5.6][ QPixmap ][Qt5.6][QPixmap]在QLabel中设置QPixmap时获取“带有彩色像素的黑色图片”

[Qt5.6][ QPixmap ][Qt5.6][QPixmap]在QLabel中设置QPixmap时获取“带有彩色像素的黑色图片”
EN

Stack Overflow用户
提问于 2016-05-13 15:06:59
回答 1查看 1.4K关注 0票数 0

(使用Visual Studio Community 2015,Qt 5.6.0)

为了训练目的,我尝试使用信号和插槽事件通过QLabel显示RGB QLabel。(显示某种颜色预览)

为此,我为每个值添加了三个滑块(r、g和b)。例如,当我更新红色滑块时,它应该生成一个带有颜色值的新QPixmap,然后将其放入一个QLabel中,如下所示:

代码语言:javascript
复制
void                Application::updateColorLabel(int value) {
    int             r, g, b;
    QPixmap         pixmap;
    QColor          color;

    this->ui.label_minValueR->setNum(value);
    pixmap = QPixmap(this->ui.label_color_preview->size());
    r = this->ui.label_minValueR->text().toInt();
    g = this->ui.label_minValueG->text().toInt();
    b = this->ui.label_minValueB->text().toInt();
    color = QColor(r, g, b);
    this->ui.label_color_preview->setPixmap(pixmap);
}

它的工作不太好,因为我得到了一个黑色的QLabel,很少有彩色像素,如。我真的不知道它为什么会显示这个。

有人能和我一起想办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-16 09:59:07

“嗯,”佩佩说得对。我忘了用颜色填充QPixmap。:)

代码语言:javascript
复制
void                Application::updateColorLabel(int value) {
    int             r, g, b;
    QPixmap         pixmap;
    QColor          color;

    this->ui.label_minValueR->setNum(value);
    r = this->ui.label_minValueR->text().toInt();
    g = this->ui.label_minValueG->text().toInt();
    b = this->ui.label_minValueB->text().toInt();
    color = QColor(r, g, b);
    pixmap = QPixmap(this->ui.label_color_preview->size());
    pixmap.fill(color);
    this->ui.label_color_preview->setPixmap(pixmap);
}

谢谢你的回答!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37213502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档