小编ekh*_*oro的帖子

如何使用 Tab 键从 QTableWidget 移动到下一个小部件

我想知道当我在 PyQt 中按下 Tab 键时如何从一个表格小部件移动到下一个小部件。

当前小部件序列由行编辑 > 组合框 > 表格小部件 > 按钮组成。在行编辑中,当您在开始时按 Tab 键时,组合框 > 表格小部件将依次移动到。然而,在 table-widget 中,反复移动到最后,它再次移动到 table-widget 的0,0行和列,而不是下一个小部件(按钮)。

我该如何解决?

python keyboard tab-ordering qtablewidget pyqt5

2
推荐指数
1
解决办法
2011
查看次数

如何在python中读取bmp文件头?

我需要用python读取bmp文件的标题。我这样试过,但它显然只返回一堆不可理解的字节:

f = open(input_filename,"rb")
data = bytearray(f.read())
f.close()
print(data[:14])
Run Code Online (Sandbox Code Playgroud)

我的想法是找到一个模块或一些快速的东西,以便在打开它时记录图像信息。我知道这个功能的MATLAB中,做正是我想要的:imfinfo()。但我在 python 中找不到对应物。

需要明确的是,这就是我使用 matlab 得到的结果:

       FileModDate: '20-Oct-2017 09:42:24'
          FileSize: 1311798
            Format: 'bmp'
     FormatVersion: 'Version 3 (Microsoft Windows 3.x)'
             Width: 1280
            Height: 1024
          BitDepth: 8
         ColorType: 'indexed'
   FormatSignature: 'BM'
NumColormapEntries: 256
          Colormap: [256x3 double]
           RedMask: []
         GreenMask: []
          BlueMask: []
   ImageDataOffset: 1078
  BitmapHeaderSize: 40
         NumPlanes: 1
   CompressionType: 'none'
        BitmapSize: 1310720
    HorzResolution: 0
    VertResolution: 0
     NumColorsUsed: 256
NumImportantColors: 0
Run Code Online (Sandbox Code Playgroud)

python image image-processing bmp file-header

2
推荐指数
1
解决办法
8280
查看次数

Pyside:检测 QWidget 上的单击和双击

我正在 Maya 中构建一个 UI,当单击按钮时将生成一堆水平布局,其中包含QScrollArea. 我想弄清楚如何让每一行识别单击/双击。当单击特定行时,我希望它返回被单击的小部件,以便我可以用它做一些事情。我想我可能必须将容器小部件附加到行布局才能识别鼠标点击?

我已经弄清楚了一般如何识别单击和双击并让它打印一些东西 - 但我很难弄清楚如何将它链接到一个小部件。

python user-interface mouseevent pyside

2
推荐指数
1
解决办法
1516
查看次数

ValueError:未转换的数据仍然存在:00:00:00

我在转换日期时间时遇到问题。

这是我的代码:

@api.multi
def action_confirm(self):
if picking.state not in ['cancel', 'draft']:
    for schedule_delivery in sorted_key:

    print "line 105: ", schedule_delivery
                dup_picking = picking.copy()
                        if shift == "afternoon":
                            date_object = datetime.strptime(schedule_delivery, '%Y-%m-%d')
                            print "Line 146", date_object
                            # raise EnvironmentError
                            tanggal = datetime.strftime(date_object, "%Y-%m-%d") + ' 06:00:00'
                            print "Line 145", tanggal
                            dup_picking.min_date = tanggal
                        else:
                            dup_picking.min_date = schedule_delivery
Run Code Online (Sandbox Code Playgroud)

错误:

    date_object = datetime.strptime(schedule_delivery, '%Y-%m-%d')
  File "/usr/lib/python2.7/_strptime.py", line 328, in _strptime
    data_string[found.end():])
ValueError: unconverted data remains:  00:00:00
Run Code Online (Sandbox Code Playgroud)

python openerp

2
推荐指数
1
解决办法
2万
查看次数

如何将文本对齐到QTableWidget中的单元格中心

我正在使用基于Qt4的PyQt。我的编辑器是PyCharm 2017.3,我的python版本是3.4。我正在从网站上抓取一些文字。我试图将文本与QTableWidget中单元格的中心对齐。

item = QTableWidgetItem(scraped_age).setTextAlignment(Qt.AlignHCenter)
self.tableWidget.setItem(x, 2,item)
Run Code Online (Sandbox Code Playgroud)

因此,在将项目放入单元格时,我正在尝试根据文档进行对齐。问题是没有显示数据。

QtableWidget的一部分,其中没有显示数据

当我删除setTextAlignment方法时,它确实显示了,如下所示

item = QTableWidgetItem(scraped_age)
self.tableWidget.setItem(x, 2,item)
Run Code Online (Sandbox Code Playgroud)

我的QtableWidget的一部分

python pyqt alignment pyqt4 qtablewidget

2
推荐指数
2
解决办法
6467
查看次数

如何在 QTableWidget 中自定义排序行为

如何更改列排序行为,而不是像这样按字母顺序排序:

1、11.1、2、22.2、3 等

它将按数字排序,如下所示:

1、2、3、11.1、22.2 等

我需要仅更改特定列上的排序行为,而不是整个表上的排序行为,因为我想保持名称的正常字母顺序。

我还有一个包含文件大小的列。它们以 MB 和 GB 表示,我想对其进行排序,以便 800 MB 排在前面,1.4 GB 排在后面。它还存在字母排序的问题。有没有一种方法可以做到这一点?

python sorting pyqt qtablewidget pyqt5

2
推荐指数
1
解决办法
2861
查看次数

单击最小化按钮时触发pyqt事件

我已经弄清楚当窗口发生变化时如何触发事件,但是这种情况发生在我从数据库中读取窗口信息时,我想在窗口缩小时写入数据库,所以,我想触发我的事件基于单击缩小按钮而不是窗口更改的任何时间.

python qt pyqt minimize pyqt4

1
推荐指数
1
解决办法
3007
查看次数

如何在pyqt中捕获鼠标在QTableWidget项的事件?

当我将鼠标悬停在我的QTableWidget项目上时,我想要做的是更改QTableWidget项目的颜色.

python pyqt qtablewidget mousehover qtablewidgetitem

1
推荐指数
1
解决办法
9749
查看次数

信号和插槽连接的星号是什么?

在Python Qt中,我将一个QListWidget信号连接到一个插槽,如下所示:

QtCore.QObject.connect(self.myList, QtCore.SIGNAL("itemClicked(QListWidgetItem *)"), self.ListEventHandler)
Run Code Online (Sandbox Code Playgroud)

我的问题是:尾随星号的作用是QListWidgetItem *什么?

python qt pyqt signals-slots

1
推荐指数
1
解决办法
131
查看次数

如何在 PyQt4 中使用 setRowHeight 和 resizeRowToContents 调整行大小?

我在表格视图中正确调整行大小时遇到​​一个小问题。我有一个垂直标题,没有水平标题。我试过:

self.Popup.table.setModel(notesTableModel(datainput))
self.Popup.table.horizontalHeader().setVisible(False)
self.Popup.table.verticalHeader().setFixedWidth(200)
for n in xrange(self.Popup.table.model().columnCount()):
    self.Popup.table.setColumnWidth(n,150)
Run Code Online (Sandbox Code Playgroud)

这工作得很好,但是当我尝试时:

 for n in xrange(self.Popup.table.model().rowCount()):
     self.Popup.table.setRowHeight(n,100)
Run Code Online (Sandbox Code Playgroud)

或者

for n in xrange(self.Popup.table.model().rowCount()):
     self.Popup.table.resizeRowToContents(n)
Run Code Online (Sandbox Code Playgroud)

即使文本超过单元格的长度,也不会调整行的大小。

如何强制行适合数据?

python resize qtableview pyqt4

1
推荐指数
1
解决办法
7701
查看次数