我们从Python开源项目中,提取了以下8个代码示例,用于说明如何使用PyQt5.QtWidgets.QCompleter()。
def createEditor(self, parent, styleOption, index): if index.column() == 1: editor = QDateTimeEdit(parent) editor.setDisplayFormat(self.parent().currentDateFormat) editor.setCalendarPopup(True) return editor editor = QLineEdit(parent) # create a completer with the strings in the column as model allStrings = [] for i in range(1, index.model().rowCount()): strItem = index.model().data(index.sibling(i, index.column()), Qt.EditRole) if strItem not in allStrings: allStrings.append(strItem) autoComplete = QCompleter(allStrings) editor.setCompleter(autoComplete) editor.editingFinished.connect(self.commitAndCloseEditor) return editor
def init_widget(self): """ ?? ??? ???? ??? """ self.setWindowTitle("QLineEdit Widget") form_lbx = QBoxLayout(QBoxLayout.TopToBottom, parent=self) self.setLayout(form_lbx) lb = QLabel() le = QLineEdit() model = QStringListModel() model.setStringList(["Hello", "Hi", "Bye", "Good", "Seoul"]) completer = QCompleter() completer.setModel(model) le.setCompleter(completer) le.textChanged.connect(lb.setText) form_lbx.addWidget(lb) form_lbx.addWidget(le)
def __init__(self, filename="", parent=None): super().__init__(parent) self.ui = Ui_DialogCSVImport() self.ui.setupUi(self) self.setAttribute(Qt.WA_DeleteOnClose) self.ui.btnAutoDefault.hide() completer = QCompleter() completer.setModel(QDirModel(completer)) self.ui.lineEditFilename.setCompleter(completer) self.filename = None # type: str self.ui.lineEditFilename.setText(filename) self.update_file() self.ui.tableWidgetPreview.setColumnHidden(self.COLUMNS["T"], True) self.update_preview() self.create_connects()
def __init__(self, parent, default=None): super(PathItem, self).__init__(parent) self.on_remove = lambda _: None self.on_path_changed = lambda *_: None self._remove_button = make_icon_button('remove', 'Remove this path', self, on_clicked=lambda: self.on_remove(self)) completer = QCompleter(self) completer.setModel(QDirModel(completer)) self._path_bar = CommitableComboBoxWithHistory(self) if default: self._path_bar.setCurrentText(default) self._path_bar.setCompleter(completer) self._path_bar.setAcceptDrops(True) self._path_bar.setToolTip('Lookup path for file services; should point either to a file or to a directory') self._path_bar.currentTextChanged.connect(self._on_path_changed) self._select_file_button = make_icon_button('file-o', 'Specify file path', self, on_clicked=self._on_select_path_file) self._select_dir_button = make_icon_button('folder-open-o', 'Specify directory path', self, on_clicked=self._on_select_path_directory) self._hit_count_label = LabelWithIcon(get_icon('upload'), '0', self) self._hit_count_label.setToolTip('Hit count') layout = QHBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self._remove_button) layout.addWidget(self._path_bar, 1) layout.addWidget(self._select_file_button) layout.addWidget(self._select_dir_button) layout.addWidget(self._hit_count_label) self.setLayout(layout)
def __init__(self, parent=None): super().__init__(parent) self.completer = QtWidgets.QCompleter(sorted(api.mail.COMPLETION_FIELD.keys()), self) self.completer.activated.connect(self.insert_completion) self.completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) self.completer.setModelSorting(QtWidgets.QCompleter.CaseSensitivelySortedModel)
def __init__(self, project_manager, noise, center, bit_length, tolerance, modulation_type_index, encodings, encoding_index=0, parent=None, testing_mode=False): super().__init__(project_manager, is_tx=False, parent=parent, testing_mode=testing_mode) self.set_sniff_ui_items_visible(True) self.graphics_view = self.ui.graphicsView_sniff_Preview self.ui.stackedWidget.setCurrentWidget(self.ui.page_sniff) self.hide_send_ui_items() self.hide_receive_ui_items() self.ui.sliderYscale.hide() self.ui.label_y_scale.hide() self.ui.spinbox_sniff_Noise.setValue(noise) self.ui.spinbox_sniff_Center.setValue(center) self.ui.spinbox_sniff_BitLen.setValue(bit_length) self.ui.spinbox_sniff_ErrorTolerance.setValue(tolerance) self.ui.combox_sniff_Modulation.setCurrentIndex(modulation_type_index) self.sniffer = ProtocolSniffer(bit_length, center, noise, tolerance, modulation_type_index, self.ui.cbDevice.currentText(), self.backend_handler) # set really in on_device_started self.scene_manager = None # type: LiveSceneManager self.init_device() self.set_bandwidth_status() self.graphics_view.setScene(self.scene_manager.scene) self.graphics_view.scene_manager = self.scene_manager # Auto Complete like a Boss completer = QCompleter() completer.setModel(QDirModel(completer)) self.ui.lineEdit_sniff_OutputFile.setCompleter(completer) self.setWindowTitle(self.tr("Sniff Protocol")) self.setWindowIcon(QIcon.fromTheme(":/icons/icons/sniffer.svg")) self.encodings = encodings for encoding in self.encodings: self.ui.comboBox_sniff_encoding.addItem(encoding.name) self.create_connects() if encoding_index > -1: self.ui.comboBox_sniff_encoding.setCurrentIndex(encoding_index) self.ui.comboBox_sniff_viewtype.setCurrentIndex(constants.SETTINGS.value('default_view', 0, int))