type object 'Qt' has no attribute 'CaseInsensitive'. Did you mean: 'CaseSensitivity'?
时间: 2023-06-21 08:20:20 浏览: 289
抱歉,我之前提供的代码有误。在PyQt6中,枚举类型`Qt.CaseInsensitive`已被更改为`Qt.CaseSensitivity.CaseInsensitive`,因此在设置大小写不敏感的QCompleter时,应该使用`Qt.CaseSensitivity.CaseInsensitive`。下面是一个更新后的示例代码:
```python
import tushare as ts
from PyQt6.QtWidgets import QLineEdit, QCompleter, QApplication
from PyQt6.QtCore import Qt
# 获取股票列表
pro = ts.pro_api()
df = pro.stock_basic()
stock_list = df['ts_code'].tolist() + df['name'].tolist()
# 创建QLineEdit对象
line_edit = QLineEdit()
# 创建QCompleter对象
completer = QCompleter(stock_list)
completer.setFilterMode(Qt.MatchContains) # 设置过滤模式
completer.setCaseSensitivity(Qt.CaseSensitivity.CaseInsensitive) # 设置大小写不敏感
# 设置自动补全功能
line_edit.setCompleter(completer)
# 显示QLineEdit对象
app = QApplication([])
line_edit.show()
app.exec()
```
在上面的代码中,我们使用了`Qt.CaseSensitivity.CaseInsensitive`来设置大小写不敏感的QCompleter。此外,我们还设置了`completer.setFilterMode(Qt.MatchContains)`以指定过滤模式。
最后,我们创建了一个QApplication对象并使用`app.exec()`运行应用程序。
阅读全文