Python 为什么从cmd运行.py与使用anaconda提示符运行时,wrap(QTableWidget,PYQT5)这个词的绘制方式不同?
我用pyqt5编写了一个GUI,您可以在其中输入两个路径(文件路径、目录路径等等)。现在我的问题是: (1) 当我在Anaconda提示窗口中运行它,并输入任何更长的路径时,它会按照我的要求进行文字包装(afai可以正确地告诉我): 在这种情况下,使用Python 为什么从cmd运行.py与使用anaconda提示符运行时,wrap(QTableWidget,PYQT5)这个词的绘制方式不同?,python,cmd,pyqt5,word-wrap,qtablewidget,Python,Cmd,Pyqt5,Word Wrap,Qtablewidget,我用pyqt5编写了一个GUI,您可以在其中输入两个路径(文件路径、目录路径等等)。现在我的问题是: (1) 当我在Anaconda提示窗口中运行它,并输入任何更长的路径时,它会按照我的要求进行文字包装(afai可以正确地告诉我): 在这种情况下,使用setTextElideMode也可以工作 (2) 当我使用windows命令提示符(C:\[…]\Desktop>C:\[…]\python\3.8.1.0.0\python-3.8.1.amd64\python.exe C:\[…]\Desk
setTextElideMode
也可以工作
(2) 当我使用windows命令提示符(C:\[…]\Desktop>C:\[…]\python\3.8.1.0.0\python-3.8.1.amd64\python.exe C:\[…]\Desktop\cmd\u problems.py
)运行它时,它通过插入正常的省略号“…
”,开始直接在“C:
”之后包装文本-我必须手动拉伸列直到整个路径可见,使其显示更多内容:
使用setTextElideMode
不起任何作用
有人知道从windows cmd行运行代码时如何获得第一个行为吗?(我需要它,因为我使用批处理脚本启动程序,类似于生成.exe文件。)
这是我的密码:
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget
from PyQt5.QtWidgets import QTableWidget, QVBoxLayout
class MyWindow(QMainWindow):
def __init__(self, parent=None):
super().__init__(parent)
self.setWindowTitle("Very Important Window")
cen = QWidget()
self.layout = QVBoxLayout()
self.setCentralWidget(cen)
cen.setLayout(self.layout)
self.tbl = QTableWidget()
self.tbl.setRowCount(1)
self.tbl.setColumnCount(2)
self.tbl.setTextElideMode(Qt.ElideRight)
col_names = ["FROM", "TO"]
self.tbl.setHorizontalHeaderLabels(col_names)
self.layout.addWidget(self.tbl)
def main():
app = QApplication([])
win = MyWindow()
win.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
运行时会得到什么:
print(QApplication.style(),metaObject().className())
?在这两种情况下,在这两种基础中,我都得到了QWindowsVistaStyle
。