python - 为什么从 cmd 运行 .py 与使用 anaconda 提示符运行时自动换行(QTableWidget、PYQT5)的绘制方式不同?
问题描述
我在 pyqt5 中编写了一个 GUI,您可以在其中输入两个路径(文件路径、目录路径……)。现在我的问题如下:
(1) 当我使用 Anaconda Prompt 窗口运行它并输入任何更长的路径时,它会按照我想要的方式自动换行(并且 afai 可以正确判断):
在这种情况下,使用setTextElideMode
也可以。
(2) 当我使用 windows 命令提示符 ( ) 运行它时,它开始通过插入普通省略号 " " 在 " "C:\[...]\Desktop>C:\[...]\python\3.8.1.0.0\python-3.8.1.amd64\python.exe C:\[...]\Desktop\cmd_problems.py
之后直接换行- 我必须(手动)拉伸列,直到整个路径可见以使其显示比那更多的:C:
...
usingsetTextElideMode
什么都不做。
有谁知道从 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()
解决方案
推荐阅读
- reactjs - 如何将状态值添加到 React 中的默认输入值
- python - 大/小值 numpy 的可能数字错误
- c - 最新的 LCC-win64 是否支持 ISO C99 标准数学库?
- database - EdgeDB 的 35k 行/秒是慢还是快?
- python - 使用 Peewee ORM 从行到列
- sql - ORA--00936 缺少表达式 SQL PIVOT
- python - Jupyter Notebook:注释位于/位于给定图形大小之外
- html - CSS按钮卡在页面底部
- javascript - 仅包含以数字开头的行
- wildfly - 一起设置 EJBCA 和 Signserver