因为简单!
因为方便!
选择使用Python的Qt主要有以下几个原因:
如果你想开发一个Python的工具,那么使用Pyqt来做GUI界面在合适不过了.
我是ubuntu22的系统,如果你跟我一样,可以使用如下命令安装:
sudo apt-get install libxcb-xinerama0
sudo apt-get install libqt5widgets5
pip install PyQt5
按照惯例,先来个Hello:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
app = QApplication(sys.argv)
window = QWidget()
window.setWindowTitle('手撕代码八百里')
label = QLabel('Hello, 手撕代码八百里!', window)
label.move(50, 50)
window.setGeometry(300, 300, 300, 200)
window.show()
sys.exit(app.exec_())
运行结果如下:
1.需要先导入QPushButton组件
from PyQt5.QtWidgets import QPushButton
2.然后创建button,绑定我们创建好的按钮事件
def btn_click():
print("Hy Button is clicked!")
# 在当前窗口中创建一个btn按钮
button = QPushButton(window)
button.resize(200, 100)
# 按钮提示文字
button.setText("你点我呀!!!!")
button.move(100, 100)
# 绑定单击事件
button.clicked.connect(btn_click)
3.运行结果:
点击按钮:
可以看到点击后,就会看到打印的结果
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QAction, QFileDialog, QVBoxLayout, QWidget
class NotepadApp(QMainWindow):
def __init__(self):
super().__init__()
self.init_ui()
def init_ui(self):
# 创建文本编辑区域
self.text_edit = QTextEdit(self)
self.setCentralWidget(self.text_edit)
# 创建菜单栏
menubar = self.menuBar()
file_menu = menubar.addMenu('File')
# 添加打开、保存和退出动作
open_action = QAction('Open', self)
open_action.triggered.connect(self.open_file)
file_menu.addAction(open_action)
save_action = QAction('Save', self)
save_action.triggered.connect(self.save_file)
file_menu.addAction(save_action)
exit_action = QAction('Exit', self)
exit_action.triggered.connect(self.close)
file_menu.addAction(exit_action)
# 设置窗口属性
self.setGeometry(100, 100, 800, 600)
self.setWindowTitle('手撕代码八百里-专用记事本')
def open_file(self):
options = QFileDialog.Options()
options |= QFileDialog.ReadOnly
file_name, _ = QFileDialog.getOpenFileName(self, 'Open File', '', 'Text Files (*.txt);;All Files (*)', options=options)
if file_name:
with open(file_name, 'r') as file:
content = file.read()
self.text_edit.setPlainText(content)
def save_file(self):
options = QFileDialog.Options()
options |= QFileDialog.DontUseNativeDialog
file_name, _ = QFileDialog.getSaveFileName(self, 'Save File', '', 'Text Files (*.txt);;All Files (*)', options=options)
if file_name:
with open(file_name, 'w') as file:
file.write(self.text_edit.toPlainText())
if __name__ == '__main__':
app = QApplication(sys.argv)
notepad = NotepadApp()
notepad.show()
sys.exit(app.exec_())
运行结果:
可以保存:
可以打开文件:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。