| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「PyQt」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
 
(同じ利用者による、間の1版が非表示)
1行目: 1行目:
==PyQt==
+
==[[PyQt]]==
[[Python]]
+
[[Python]] |
  
 
=====チュートリアル=====
 
=====チュートリアル=====
 
*http://zetcode.com/tutorials/pyqt4/
 
*http://zetcode.com/tutorials/pyqt4/
 
=====クラスリファレンス=====
 
=====クラスリファレンス=====
*http://pyqt.sourceforge.net/Docs/PyQt4/classes.html
+
*http://pyqt.sourceforge.net/Docs/[[PyQt]]4/classes.html
 
=====ドキュメント=====
 
=====ドキュメント=====
 
*http://qt-project.org/doc/qt-4.8/
 
*http://qt-project.org/doc/qt-4.8/
 
=====Wiki=====
 
=====Wiki=====
*https://wiki.python.org/moin/PyQt
+
*https://wiki.python.org/moin/[[PyQt]]
  
 
===インストール===
 
===インストール===
19行目: 19行目:
 
   
 
   
 
  import sys
 
  import sys
  from PyQt4 import QtGui as gui
+
  from [[PyQt]]4 import QtGui as gui
  from PyQt4 import QtCore as core
+
  from [[PyQt]]4 import QtCore as core
 
   
 
   
 
  class MainWindow(gui.QWidget):
 
  class MainWindow(gui.QWidget):
44行目: 44行目:
 
  # -*- coding:utf-8 -*-
 
  # -*- coding:utf-8 -*-
 
  import sys
 
  import sys
  from PyQt4 import QtGui, QtCore
+
  from [[PyQt]]4 import QtGui, QtCore
 
   
 
   
 
  class ExampleQt(QtGui.QWidget):
 
  class ExampleQt(QtGui.QWidget):
74行目: 74行目:
 
         grid.addWidget(self.chkTblPrefix,3,0)
 
         grid.addWidget(self.chkTblPrefix,3,0)
 
   
 
   
         boxBtn = QtGui.QBoxLayout(QtGui.QBoxLayout.LeftToRight)
+
         boxBtn = QtGui.QBoxLayout(QtGui.QBoxLayout.LeftTo[[R]]ight)
 
   
 
   
 
         self.btnExec = QtGui.QPushButton(u'実行',self)
 
         self.btnExec = QtGui.QPushButton(u'実行',self)
130行目: 130行目:
 
     main()
 
     main()
  
==Tips==
+
==[[Tips]]==
 
===スクロールバーを先頭に移動===
 
===スクロールバーを先頭に移動===
 
=====TextEdit=====
 
=====TextEdit=====
136行目: 136行目:
  
 
===チェックボックスをチェック===
 
===チェックボックスをチェック===
*http://pyqt.sourceforge.net/Docs/PyQt4/qt.html#CheckState-enum
+
*http://pyqt.sourceforge.net/Docs/[[PyQt]]4/qt.html#CheckState-enum
  from PyQt4 import QtCore as qt
+
  from [[PyQt]]4 import QtCore as qt
 
   
 
   
 
  chkCountWs = gui.QCheckBox(u"空白計測")
 
  chkCountWs = gui.QCheckBox(u"空白計測")
144行目: 144行目:
 
  dialog = QtGui.QFileDialog()
 
  dialog = QtGui.QFileDialog()
 
  dialog.setFileMode(gui.QFileDialog.AnyFile)
 
  dialog.setFileMode(gui.QFileDialog.AnyFile)
  dialog.setFilter('images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)')
+
  dialog.setFilter('images (*.png *.xpm *.jpg);;Text files (*.txt);;[[XML]] files (*.xml)')
 
  if dialog.exec_():
 
  if dialog.exec_():
 
     fileNames = dialog.selectedFiles()     
 
     fileNames = dialog.selectedFiles()     
150行目: 150行目:
 
         print f
 
         print f
 
==サンプル==
 
==サンプル==
===Python ファイルを分割する===
+
===[[Python ファイルを分割する]]===
*Python ファイルを分割する
+
*[[Python ファイルを分割する]]
 
===文字数計測ツール===
 
===文字数計測ツール===
 
*http://typea.info/blg/glob/2014/08/pyqt.html
 
*http://typea.info/blg/glob/2014/08/pyqt.html
 
[[File:1018_pyqt_char_counter.jpg]]
 
[[File:1018_pyqt_char_counter.jpg]]
  
===FreeMindをHTMLに変換する===
+
===FreeMindを[[HTML]]に変換する===
 
*http://typea.info/blg/glob/2014/08/pyqtubuntuhtmlwiki.html
 
*http://typea.info/blg/glob/2014/08/pyqtubuntuhtmlwiki.html
 
[[File:1017_freemind_2_html.png]]
 
[[File:1017_freemind_2_html.png]]

2020年2月16日 (日) 04:30時点における最新版

PyQt

Python |

チュートリアル
クラスリファレンス
ドキュメント
Wiki

インストール

サンプル

ブランクテンプレート

  1. # -*- coding:utf-8 -*-
  2.  
  3. import sys
  4. from PyQt4 import QtGui as gui
  5. from PyQt4 import QtCore as core
  6.  
  7. class MainWindow(gui.QWidget):
  8. def __init__(self):
  9. super(MainWindow, self).__init__()
  10. self.initUi()
  11.  
  12. def initUi(self):
  13. #
  14. #
  15. self.show()
  16.  
  17. def main():
  18. app = gui.QApplication(sys.argv)
  19. mainWin = MainWindow()
  20. sys.exit(app.exec_())
  21.  
  22. if __name__ == '__main__':
  23. main()

簡易画面

1019 pyqt sample01.jpg

  1. # -*- coding:utf-8 -*-
  2. import sys
  3. from PyQt4 import QtGui, QtCore
  4.  
  5. class ExampleQt(QtGui.QWidget):
  6. def __init__(self):
  7. super(ExampleQt, self).__init__()
  8. self.initUi()
  9.  
  10. def getModeItems(self):
  11. return (u'Item1',u'Item2',u'Item3')
  12.  
  13. def initUi(self):
  14.  
  15. grid = QtGui.QGridLayout()
  16. grid.setSpacing(10)
  17.  
  18. lblMode = QtGui.QLabel(u'テスト')
  19. self.cmbMode = QtGui.QComboBox(self)
  20. self.cmbMode.addItems(self.getModeItems())
  21. grid.addWidget(lblMode,1,0)
  22. grid.addWidget(self.cmbMode,1,1)
  23.  
  24. lblMq = QtGui.QLabel('MQ')
  25. self.cmbMqs = QtGui.QComboBox(self)
  26. self.cmbMqs.addItems(('Item1','Item2','Item3','Item4','Item5','Item6'))
  27. grid.addWidget(lblMq,2,0)
  28. grid.addWidget(self.cmbMqs,2,1)
  29.  
  30. self.chkTblPrefix = QtGui.QCheckBox(u'チェックボックス',self)
  31. grid.addWidget(self.chkTblPrefix,3,0)
  32.  
  33. boxBtn = QtGui.QBoxLayout(QtGui.QBoxLayout.LeftToRight)
  34.  
  35. self.btnExec = QtGui.QPushButton(u'実行',self)
  36. self.btnExec.clicked.connect(self.doExecute)
  37. boxBtn.addWidget(self.btnExec)
  38.  
  39. self.btnClear = QtGui.QPushButton(u'クリア',self)
  40. self.btnClear.clicked.connect(self.doClear)
  41. boxBtn.addWidget(self.btnClear)
  42.  
  43. grid.addLayout(boxBtn, 4,0,1,2)
  44.  
  45. splitter1 = QtGui.QSplitter(QtCore.Qt.Horizontal)
  46.  
  47. self.txtData = QtGui.QTextEdit(self)
  48. splitter1.addWidget(self.txtData)
  49.  
  50. self.txtOut = QtGui.QTextEdit(self)
  51. splitter1.addWidget(self.txtOut)
  52.  
  53. grid.addWidget(splitter1, 5,0,1,5)
  54.  
  55. self.setLayout(grid)
  56. self.setGeometry(200, 200, 700, 400)
  57. self.show()
  58.  
  59. def doClear(self, value):
  60. self.txtData.clear()
  61. self.txtOut.clear()
  62.  
  63. def doExecute(self, value):
  64. selected = self.getModeItems().index(unicode(self.cmbMode.currentText()))
  65.  
  66. result =
  67. data = unicode(self.txtData.toPlainText())
  68. if selected == 0:
  69. isprefix = self.chkTblPrefix.isChecked()
  70. # do something
  71. pass
  72. elif selected == 1:
  73. # do something
  74. pass
  75. elif selected == 2:
  76. # do something
  77. pass
  78. self.txtOut.clear()
  79. self.txtOut.append(result)
  80.  
  81. def main():
  82. app = QtGui.QApplication(sys.argv)
  83. exampleQt = ExampleQt()
  84. sys.exit(app.exec_())
  85.  
  86. if __name__ == '__main__':
  87. main()

Tips

スクロールバーを先頭に移動

TextEdit
  1. textEdit.verticalScrollBar().triggerAction(QtGui.QAbstractSlider.SliderToMinimum)

チェックボックスをチェック

  1. from PyQt4 import QtCore as qt
  2.  
  3. chkCountWs = gui.QCheckBox(u"空白計測")
  4. chkCountWs.setCheckState(qt.Qt.Checked)

ファイル選択

  1. dialog = QtGui.QFileDialog()
  2. dialog.setFileMode(gui.QFileDialog.AnyFile)
  3. dialog.setFilter('images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)')
  4. if dialog.exec_():
  5. fileNames = dialog.selectedFiles()
  6. for f in fileNames:
  7. print f

サンプル

Python ファイルを分割する

文字数計測ツール

1018 pyqt char counter.jpg

FreeMindをHTMLに変換する

1017 freemind 2 html.png