pychram,写一个窗口对话的产品库存管理系统,数据本地保存,如果没有本地文件库就新建一个
时间: 2023-11-09 17:05:31 浏览: 46
好的,我可以帮你实现一个简单的产品库存管理系统。首先,我们需要安装PyQt5库,它是Python中一个常用的GUI库。
安装PyQt5可以使用以下命令:
```python
pip install PyQt5
```
接下来,我们创建一个窗口类,在该类中实现产品库存管理系统的所有功能。
```python
import os
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QLineEdit, QPushButton, QMessageBox
class ProductInventoryManagementSystem(QMainWindow):
def __init__(self):
super().__init__()
# 设置窗口标题和大小
self.setWindowTitle('产品库存管理系统')
self.setGeometry(100, 100, 400, 300)
# 创建标签和文本框
self.label_product_name = QLabel('产品名称', self)
self.label_product_name.move(50, 50)
self.text_product_name = QLineEdit(self)
self.text_product_name.move(150, 50)
self.label_product_num = QLabel('产品数量', self)
self.label_product_num.move(50, 100)
self.text_product_num = QLineEdit(self)
self.text_product_num.move(150, 100)
# 创建按钮
self.btn_save = QPushButton('保存', self)
self.btn_save.move(50, 150)
self.btn_save.clicked.connect(self.save_data)
self.btn_clear = QPushButton('清空', self)
self.btn_clear.move(150, 150)
self.btn_clear.clicked.connect(self.clear_data)
# 创建状态栏
self.statusBar().showMessage('欢迎使用产品库存管理系统')
# 加载数据
self.load_data()
def save_data(self):
# 获取产品名称和数量
product_name = self.text_product_name.text()
product_num = self.text_product_num.text()
# 判断是否输入了产品名称和数量
if not product_name or not product_num:
QMessageBox.warning(self, '警告', '请输入产品名称和数量')
return
# 将数据保存到本地文件
with open('data.txt', 'a') as f:
f.write(f'{product_name},{product_num}\n')
# 清空文本框
self.text_product_name.setText('')
self.text_product_num.setText('')
# 更新状态栏
self.statusBar().showMessage(f'保存成功:{product_name}({product_num})')
def clear_data(self):
# 清空文本框
self.text_product_name.setText('')
self.text_product_num.setText('')
def load_data(self):
# 判断本地文件是否存在,如果不存在则创建一个
if not os.path.exists('data.txt'):
with open('data.txt', 'w') as f:
pass
# 加载本地文件中的数据
with open('data.txt', 'r') as f:
for line in f.readlines():
product_name, product_num = line.strip().split(',')
self.statusBar().showMessage(f'加载数据:{product_name}({product_num})')
if __name__ == '__main__':
app = QApplication([])
window = ProductInventoryManagementSystem()
window.show()
app.exec_()
```
在这个窗口类中,我们实现了以下功能:
1. 设置窗口标题和大小。
2. 创建标签和文本框,用于输入产品名称和数量。
3. 创建保存和清空按钮,用于保存数据和清空文本框。
4. 创建状态栏,用于显示保存成功和加载数据信息。
5. 加载本地文件中的数据,如果本地文件不存在则创建一个。
6. 将产品名称和数量保存到本地文件中。
当你运行这个程序时,首先会加载本地文件中的数据,如果本地文件不存在则创建一个。然后,你可以输入产品名称和数量,点击保存按钮将其保存到本地文件中。你也可以点击清空按钮清空文本框。所有的保存成功和加载数据信息都会显示在状态栏中。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)