Python3 PyQt4 创建一个简单的QCheckBox并改变一个布尔变量
所以我一直在尝试使用Python 3.3和Pyqt4编写GUI.我曾经经过一些教程,但我仍然不知道如何在全局变量中进行复选框检查和取消选中触发器的变化.我无法为此而触发任何东西,因为所有教程都使用对我不起作用的方法. 该程序太大了,无法整体复制,因此我将围绕复选框的程序的基本结构汇总在一起 import sys from PyQt4 import QtGui, QtCore ILCheck = False class SelectionWindow(QtGui.QWidget): def __init__(self, parent=None): super(SelectionWindow, self).__init__(parent) ILCheckbox = QtGui.QCheckBox(self) ILCheckbox.setCheckState(QtCore.Qt.Unchecked) M
24 2023-12-07
编程技术问答社区
将信号和插槽与动态创建的qcheckbox联系起来
我有一个非常具体的问题,所以我要尽可能清楚. 我有一个包含QTableWidget的QTabWidget,我QTableWidget的每一行都是通过读取文件动态创建的. 您可能会看到,当我创建一行时,我在最后添加qCheckBox.我现在的目标是在我单击qCheckBox时将此行发送到QTableWidget的最后一个选项卡(并在取消选中qCheckBox时删除此行). 因此,每次我动态创建一条线时,我都会尝试与我的qCheckBox相关联: QObject::connect(pCheckBox, SIGNAL(clicked()), this, SLOT(cliqueCheckBox(monTab,ligne, pCheckBox))); 但是它行不通,我有错误: QObject::connect: No such slot supervision::cliqueCheckBox(monTab,ligne, pCheckBox) 但是存在这个插槽
40 2023-09-03
编程技术问答社区
Python- 为 QTableWidget 中的每一行添加复选框
我正在尝试在qtableWidget中的每一行中添加一个contbow,不幸的是,它似乎只出现在第一行中.这是我的代码: data = ['first_row', 'second_row', 'third_row'] nb_row = len(data) nb_col = 2 qTable = self.dockwidget.tableWidget qTable.setRowCount(nb_row) qTable.setColumnCount(nb_col) chkBoxItem = QTableWidgetItem() for row in range(nb_row): for col in [0]: item = QTableWidgetItem(str(data[row])) qTable.setItem(row,col,item) for col in [1]: chkBoxItem.setFlags(Q
14 2023-07-25
编程技术问答社区
表格视图中的复选框和 itemdelegate
我正在执行从Qitemdelegate继承的复选框,以将其放入QTableView中. 问题是我在插入冲洗时得到的,我需要以中心为中心. 我了解负责油漆的方法.我写的如下: void CheckBoxDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { bool checkValue; QStyleOptionButton BtnStyle; BtnStyle.state = QStyle::State_Enabled; if(index.model()->data(index, Qt::DisplayRole).toBool() == true) { BtnStyle.state |= QStyle::State_On; checkValue = true; }else{ BtnStyle.state |= Q
18 2023-07-25
编程技术问答社区
复选框的 QCombobox
我有问题,希望您能帮助我.我想在QT Creator上创建一个复选框的组合.这是我的代码 mod = new QStandardItemModel(1,0); QStandardItem *item; item = new QStandardItem("First"); item->setCheckable(true); mod->setItem(0,item); item = new QStandardItem("Second"); item->setCheckable(true); mod->setItem(1,item); ui->comboBox->setModel(mod); 我构建了此代码,但在Combobox中不是复选框.网上有人告诉我我必须使用该活动.你能帮我吗? 解决方案 您只需要设置初始的检查状态添加剂 item->setCheckState(Qt::CheckState state); ,例如 item->setCheckState
20 2023-07-25
编程技术问答社区
设置部件背景颜色
我在QTableWidgetCell 中使用QCheckBox QWidget *widget = new QWidget(); QCheckBox *checkBox = new QCheckBox(); QHBoxLayout *layout = new QHBoxLayout(widget); layout->addWidget(checkBox); layout->setAlignment(Qt::AlignCenter); layout->setContentsMargins(0, 0, 0, 0); widget->setLayout(layout); table->setCellWidget(0, 0, widget); 如何更改单元背景? 解决方案 代码: widget->setStyleSheet("background-color: red"); 工作正常,但您需要为添加到表中的每个容器小部件设置样式: 因此,为了查看更改,您需要以下代
38 2023-07-25
编程技术问答社区
使用 QCheckbox 增加复选框大小而非文本?
如何增加QCheckbox控件的复选框的大小,而不是文本大小? 谢谢. 解决方案 Jérôme为您提供了很好的建议.我将举一个进一步的例子. QCheckBox::indicator { width: 40px; height: 40px; } QCheckBox::indicator:checked { image: url(../Checkbox_checked_normal.png); } QCheckBox::indicator:unchecked { image: url(../Checkbox_unchecked_normal.png); } QCheckBox::indicator:checked:hover { image: url(../Checkbox_checked_hovered.png); } QCheckBox::indicator:unchecked
24 2023-07-25
编程技术问答社区
Qt5 为 QPushButton 和 QCheckBox 设置背景颜色
我正在尝试更改qt5中qabstractbutton(qpushbutton或qcheckbox)的背景颜色,但运气为零. 这无能为力: pButton->setAutoFillBackground(true); QPalette palette = pButton->palette(); palette.setColor(QPalette::Window, QColor(Qt::blue)); pButton->setPalette(palette); pButton->show(); ,如果我尝试更改样式表: pButton->setStyleSheet("background-color: rgb(255,255,0);"); 然后qt伸出手并绘制一个外观的块状按钮. 有一个标题为" 如何更改Qwidget的背景颜色"谈论这两种方法. 还有一个页面" 我需要在Mac,Windows和Ubuntu Linux上运行,如果我必须手动绘制有关按钮3次的
36 2023-07-25
编程技术问答社区
QCheckbox/QRadioButton换行 Qt4.6.0
我正在尝试使用标准QCHECKBOX/QRADIOBUTTON使用QT的多行复选框/RadioButton. 我没有找到直接解决方案,因为QRadioButton{wrap:true;}没有效果. 唯一可能的是访问QRadioButton->label->setLineWrap(true),但 我想从设计师那里做到这一点 不必重写小部件 在旁边放一个Qradiobutton和Qlabel旁边有什么想法? thx,boris. 解决方案 这确实很烦人,并且不能不重新实现就无法解决:如果我没记错的话,标签使用Qt::PlainText.在我们的项目中,UI团队通过两种方法解决了这一点. 使用Qradiobutton按钮作为标题 以这种方式重写了Qradiobutton文本,以至于它只有对选项的简要说明.在其下面放一个Qlabel,并添加更长的描述.我们使用较小的字体和一点凹痕使其看起来整洁.例如,Mac OS X中经常使用. 从"广播"按钮
38 2023-07-24
编程技术问答社区
PyQT Fusion 风格移除可复选组合框中的复选框
我使用以下代码创建了一个可检查的Qcombobox.然后,我应用了融合风格,以使我的程序看起来更好.但是,这样做会导致我代码中的项目旁边的复选框不再可见.我该如何解决? class WindowGUI(QMainWindow): def __init__(self, gui): super().__init__() self.initUI(gui) def initUI(self, gui): self.teacherSelect = TeacherSelect() self.setCentralWidget(self.teacherSelect) class TeacherSelect(QComboBox): def __init__(self, parent): super().__init__(parent) self.parent = parent
38 2023-07-22
编程技术问答社区
Qt | 在QTable中把复选框放在中心位置
在QTCREATER中,我在项目中添加了一个表.在我的代码中,我正在生成一些数据以输出到表中.我想在每一行中添加一个QCheckbox,以允许选择该行.表的所​​有内容都对齐,如何仅在每个行的第一列中仅制作这些复选框? 我正在添加QCheckbox使用: ui->data_table->setCellWidget(rowCount,0, new QCheckBox); 解决方案 我通常使用布局和容器小部件.这是一个丑陋的解决方案,但有效: QWidget * w = new QWidget(); QHBoxLayout *l = new QHBoxLayout(); l->setAlignment( Qt::AlignCenter ); l->addWidget( ); w->setLayout( l ); ui->data_table->setCellWidget(rowCount,0, w); 基本上您将拥
26 2023-07-17
编程技术问答社区
使用QListWidget的Qt命令日志
我正在尝试在用户界面上构建命令登录.意思是,当用户单击按钮时,请选中一个框,上传一些图像等,基本上每次用户与用户界面进行交互时,操作都记录在QListWidget命令日志中.基本上,这就是用户运行时的UI外观: ,这就是我每次用户与UI交互时尝试实现的目标: 构造函数的代码段落下方: mainwindow.h private: QListWidget *mNewTextSQLLog; mainwindow.cpp MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); mDockWidget_A = new QDockWidget(QLatin1String("Command Log")); mDockWidget_A->setSizePolicy(Q
46 2023-07-17
编程技术问答社区
如何改变QCheckBox小部件中的勾的颜色?
我想将QCheckbox中tick的颜色从黑蓝色更改为深蓝色,我尝试了QSS,但它不起作用: QCheckBox { background-color:blue; color:blue; } 使用QSS仅更改背景颜色,但我想更改tick的颜色. 我是否应该超负荷其油漆才能完成? 谢谢. ----------- 现在我正在尝试QSS解决它, QCheckBox { spacing: 5px; } QCheckBox::indicator { width: 13px; height: 13px; } QCheckBox::indicator:unchecked { image: url(:/images/checkbox_unchecked.png); } QCheckBox::indicator:unchecked:hover { image: url(:/images/checkbox_uncheck
34 2023-07-17
编程技术问答社区
禁止用户在QTableWidget上点击
我在某些单元格中具有带有复选框的QTableWidget.我想禁用用户执行鼠标单击表单元格(因此他无法更改复选框状态)在我使用表中的数据时,请在一段时间内更改复选框状态.我已经尝试了table.setDisabled(1),但这可以禁用全表,我需要启用滚动. 任何帮助将不胜感激. 编辑 更准确地说:表格中最多可能有15x3000个单元格,其中填充文本(可编辑),复选框(可检查),svg Graphic(双击双击时打开其他窗口)或一些自定义窗口(也具有可单击或可编辑的窗口部分).我需要禁用用户单击或双击单元格(以便他不能更改其中的任何一个)1秒-10秒时间间隔(解决方案必须是快速的,而不是在所有项目中迭代),但是我需要滚动式滚动栏即可启用并普通表可见性. 解决方案 实现此目的的一种方法是qtableWidgetItem并重新实现要控制所有项目的"可检查性",您可以将类属性添加到子类中,只要将检查状态角色的值传递给setData. 这是子类的样子: class T
16 2023-07-17
编程技术问答社区
改变QCheckBox的复选框位置
我在网格布局中有一个QCheckbox: self.isSubfactorCheckbox = QtGui.QCheckBox('Is &subfactor', self) 默认情况下,复选框位于" IS isubfactor"文本的左侧.我想将其移至文本的右边. 我尝试使用子控制位置玩耍,但无济于事. self.isSubfactorCheckbox.setStyleSheet('QCheckBox::indicator{subcontrol-origin: content; subcontrol-position: top right;}') 这将复选框向右移动(它仍然在文本的左侧),但将文本向右推出窗口的边缘. 这无助于向右移动文本: self.isSubfactorCheckbox.setStyleSheet('QCheckBox::text{subcontrol-origin: content; subcontrol-position: t
12 2023-07-16
编程技术问答社区
如何使QCheckBox只读,但不灰显
任何好方法可以阅读复选框,但也不是 (几乎不可见). 我使用了setEnabled(bool)有效的setEnabled(bool),但是复选框是灰色的,几乎不可读取 我可以在切换信号上反应并重置状态.但是我需要一种标志来确定盒子是否仅读取,然后重置检查状态,这意味着我需要创建自己的CheckBox类. setCheckable也不起作用,它根本不允许我设置检查状态: cb = this->ui->cb_RealWorld->isCheckable(); this->ui->cb_RealWorld->setCheckable(true); this->ui->cb_RealWorld->setChecked(someValue); this->ui->cb_RealWorld->setCheckable(cb); 所以我拥有的最好的事情是使用启用/禁用并接受灰色的样式. -------编辑------- 之后 styl
380 2023-07-16
编程技术问答社区
如何在Qt中改变QCheckBox文本标签的颜色?
我无法更改 qt 中的Qcheckbox的颜色,有人可以帮助我使用代码来更改复选框文本标签的颜色. 我尝试了Qpalette ..,并且我使用 qt4.7.4 版本.. 解决方案 您可以使用 stylesheets . 例如: checkBox->setStyleSheet("QCheckBox { color: red }"); 有关更多详细信息,请检查 stylesheets文档 其他解决方案 这对我有用: QPalette p = myCheckBox->palette(); p.setColor(QPalette::Active, QPalette::WindowText, green); myCheckBox->setPalette(p); 其他解决方案 我使用QT5的各种版本(5.2,5.4)遇到了这个问题.要使用样式表进行操作,我不得不使用伪态属性: http://doc.qt.io/qt-4.8/stylesheet-refer
110 2023-07-16
编程技术问答社区
PyQt4 Qtreewidget-如果子复选框被选中,获取层次结构文本
我目前正在尝试做的是取一个填充的树(qtreewidget),该树在底部的子女级别上,如果检查盒子,请将路径的文本返回给孩子.我要这样做的原因是,如果检查了一个孩子,它将在字典中更改键中的值. (创建了树的"原始"字典).这是我的意思的视觉示例: 从用户输入和服务器目录爬行中,我们填充了一棵树,看起来像这样: (只有最低的儿童物品具有复选框.)很抱歉可怕的树图!希望这有意义... 编辑 研究 - 主体1 - 日期 --- [] C --- [] D --- [] e - 对象2 - 日期 --- [] g --- [] h 如果某人检查(例如)" G" Levle Child,那么无论如何都可以以[1,B,G]或1-B-G或1的形式获得" G"的路径/b/g,等等? 儿童级别之一(例如,在示例A和B中)也设置为用户可编辑.因此,我需要从树上的信息,而不是树最初填充的信息. 我尝试过印刷self.ui
10 2023-07-14
编程技术问答社区
QListView中的复选框选择
我开发了一个使用复选框的简单对话框,该对话框允许用户从列表中选择一个或几个项目.除了标准确定和取消按钮外,它还添加选择全部并取消选择所有按钮,从而使用户一次检查/取消选中所有项目(对于大列表而言,这很方便). import os, sys from PyQt4 import Qt, QtCore, QtGui class ChecklistDialog(QtGui.QDialog): def __init__(self, name, stringlist=None, checked=False, icon=None, parent=None): super(ChecklistDialog, self).__init__(parent) self.name = name self.icon = icon self.model = QtGui.QStandardItemModel() self.
6 2023-07-14
编程技术问答社区
取消其他所有复选框的复选框
我正在尝试进行一些验证: "选择" 或"选择b" 被检查时,"无选择" 会自动未经检查 当检查"无选择"时,"选择" A 和"选择b" 会自动未检查 但是,当我运行此代码时,单击任何复选框都会取消选中 all 3个复选框. 即.窗口以"无选"初始化检查.但是,当我单击"选择" 时,它取消选中"无选择" ,但"选择" 没有检查. 我在做什么错? import sys import PyQt5 class Test(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): checkBoxNone = QCheckBox("None Selected") checkBoxA = QCheckBox("Select A") checkBoxB = Q
30 2023-06-27
编程技术问答社区