AttributeError: 'MainWindow' object has no attribute '_translate'
时间: 2023-09-10 20:14:14 浏览: 191
python报错: list object has no attribute shape的解决
这个错误通常是由于在使用`_translate`函数时没有正确导入Qt的库函数所导致的。请确保在你的代码中正确导入了Qt库并且正确地使用了`_translate`函数。以下是一个正确导入和使用的例子:
```
from PyQt5.QtCore import Qt, QCoreApplication
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication, QMainWindow, QMenu, QVBoxLayout, QSizePolicy, QMessageBox, QWidget, QPushButton
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("My App")
self.setGeometry(100, 100, 800, 600)
self.setWindowIcon(QIcon("icon.png"))
# create a central widget
central_widget = QWidget(self)
self.setCentralWidget(central_widget)
# create a vertical layout for the central widget
layout = QVBoxLayout(central_widget)
# create a button and add it to the layout
button = QPushButton(self.translate("MainWindow", "Click me!"))
layout.addWidget(button)
def translate(self, context, text):
return QCoreApplication.translate(context, text)
```
在这个例子中,我们首先导入了Qt相关的库,然后在`MainWindow`类中定义了一个`translate`函数来处理翻译。在`__init__`函数中,我们创建了一个按钮,使用`self.translate`函数将按钮的文本翻译为当前语言。
阅读全文