PyQt5で表を作る時にある列の幅のみを変更させるのにはどうしたらよいか、ご教示頂けませんでしょうか? 下記ソースコードで、例えば、3列目の幅だけ変更する(すべての文字が表示されるくらい広くする)にはどうすればよいでしょうか? PyQt Designerで表を作って色々とやってみたのですが、Designerの機能はすべての列を同時に変える設定しか見つからなく。 よろしくお願いします。
Python
1import sys 2 3from PyQt5.QtWidgets import QMainWindow, QApplication, QWidget, QApplication, QTableView, QVBoxLayout 4from PyQt5.QtGui import QFont, QIcon, QStandardItemModel, QStandardItem 5 6class Example(QWidget): 7 def __init__(self): 8 super().__init__() 9 10 11 self.setGeometry(20, 20, 400, 250) 12 self.setWindowTitle("hello") 13 14 self.initData() 15 self.initUI() 16 17 18 def initData(self): 19 data = [["春", "桜", "京都の桜のきれいな寺院に行きたい"], ["夏", "海", "沖縄のエメラルドグリーンの海に行きたい"], ["秋", "紅葉", "京都の紅葉の綺麗な観光名所に行きたい"], ["冬", "雪", "北海道の温泉に行きたい"]] 20 self.model = QStandardItemModel(4, 3) 21 22 row = 0 23 col = 0 24 25 for col in range(3): 26 for row in range(4): 27 item = QStandardItem(data[row][col]) 28 self.model.setItem( row, col, item) 29 30 def initUI(self): 31 self.tv = QTableView(self) 32 self.tv.setModel(self.model) 33 34 self.tv.setGeometry(20, 20, 1200, 450) 35 36app = QApplication(sys.argv) 37ex = Example() 38ex.show() 39sys.exit(app.exec_())
あなたの回答
tips
プレビュー