def process_flag(flag, interface): '''As flags can be recursive this process each flag in flag_widgets and if it has children - iterates into them as well DFS principle Args: flag (Flag): current flag which qcompleter is being updated interface (Interface): interface which flag belongs to ''' #as flag_widgets are list() that's the only way of iteration widget = None for flag_widget in interface.gui_controller.flag_widgets: if flag_widget.objectName() == "flag_" + flag.iden: widget = flag_widget break if not widget: return lineedit = widget.findChild(QLineEdit) if not lineedit: return #update completer completer = lineedit.completer() completer.setModel(QStringListModel(flag.suggestions)) #recursive call to all flag children for _, flag_flag in flag.flag_flags.items(): process_flag(flag_flag, interface)
def __init__(self, root_widget=None): self.east = 180 self.west = -180 self.north = 90 self.south = -90 self.valid = True super(self.__class__, self).__init__() self.schema = 'bdp' self.root_widget = root_widget self.after_load = False self.has_rect = True completer = QCompleter() self.ui.fgdc_descgeog.setCompleter(completer) model = QStringListModel() completer.setModel(model) completer.setCaseSensitivity(0) fname = utils.get_resource_path("spatial/BNDCoords.csv") self.bnds_df = pd.read_csv(fname) model.setStringList(self.bnds_df['Name'])
def setCompleter(self, lineEdit): self.getHotelData() model = QStringListModel() model.setStringList(self.hotelStringList) completer = QCompleter() completer.setModel(model) lineEdit.setCompleter(completer)
def __init__(self, root_widget=None): self.east = 180 self.west = -180 self.north = 90 self.south = -90 self.valid = True super(self.__class__, self).__init__() self.schema = 'bdp' self.root_widget = root_widget self.after_load = False self.in_xml_load = False self.has_rect = True self.completer = QCompleter() self.ui.fgdc_descgeog.setCompleter(self.completer) self.model = QStringListModel() self.completer.setModel(self.model) self.completer.setCaseSensitivity(0) fname = utils.get_resource_path("spatial/BNDCoords.csv") self.bnds_df = pd.read_csv(fname) self.model.setStringList(self.bnds_df['Name']) self.completer.popup().clicked.connect(self.on_completer_activated) self.completer.popup().selectionModel().selectionChanged.connect( self.on_completer_activated)
def spinboxPage(self, value): t = int(re.search('.(\d*).', self.ui.label.text()).group(1)) if (value == t): self.ui.pushButton_4.setEnabled(False) self.ui.pushButton_2.setEnabled(True) elif (value == 1): self.ui.pushButton_2.setEnabled(False) self.ui.pushButton_4.setEnabled(True) else: self.ui.pushButton_2.setEnabled(True) self.ui.pushButton_4.setEnabled(True) file = open('searchResult', 'r') lines = file.readlines() file.close() for l in range(len(lines)): lines[l] = lines[l].replace('\n', '') #去掉換行符 lt = [] for v in range(value * 10 - 10, value * 10): try: lt.append(lines[v]) except IndexError: pass slm = QStringListModel() slm.setStringList(lt) self.ui.listView.setModel(slm)
def set_auto_completion(self, string_list): completer = QCompleter() model = QStringListModel() model.setStringList(string_list) completer.setModel(model) completer.activated.connect(self.search, type=Qt.QueuedConnection) self.combobox_search.setCompleter(completer)
def __init__(self, parent): super(QWidget, self).__init__(parent) start_dir = QStringListModel() start_dir = 'C:/ROBOCZY' self.model = QFileSystemModel() self.model.setFilter(QDir.AllDirs | QDir.NoDotAndDotDot | QDir.AllEntries) self.model.setNameFilters() self.model.setNameFilterDisables(0) #self.model.setRootPath(start_dir) #self.model.setRootPath(start_dir) self.tree = QTreeView() self.tree.setRootIndex(self.model.index(start_dir)) self.tree.setModel(self.model) self.tree.setAnimated(False) self.tree.setIndentation(20) self.tree.setSortingEnabled(True) self.tree.setWindowTitle("Dir View") self.tree.resize(640, 480) windowLayout = QVBoxLayout() windowLayout.addWidget(self.tree) self.setLayout(windowLayout)
def delete_all_record(self): listModel = QStringListModel() listModel.setStringList([]) self.MainWindow.requestRecord.setModel(listModel) all_record = read_all_record() all_record['api'] = {} write_all_record(all_record)
def __init__(self, parent=None): # python2 中的写法,等同于 super().__init__(parent) super(MyMainView, self).__init__(parent) super().setupUi(self) # self.setupUi(self) # 获取当前工作路径 self.path = os.getcwd() self.slm = QStringListModel() self.qlist = [] self.slm.setStringList(self.qlist) self.musicListView.setModel(self.slm) self.searchBtn.setStyleSheet( '''QPushButton{background:#F7667;border-radius:5px;}''') self.searchBtn.clicked.connect(self.search_music) self.musicListView.clicked.connect(self.clickItem) self.musicListView.setContextMenuPolicy(Qt.CustomContextMenu) # listview 右键点击事件 self.musicListView.customContextMenuRequested[QPoint].connect( self.listWidgetContext) # 选择存储文件夹 self.selectFolder.triggered.connect(self.selectFolderAction) # 选择歌曲源 self.sourceBox.addItems(['网抑云', 'QQ', '虾米', '酷狗', '百度'])
def changeAttr(self, attr): self.searchBy.setCurrentText(attr) self.searchAttr = attr model = QStringListModel() if attr == '按书名': booknames = self.db.getAllBookNames() model.setStringList(booknames) elif attr == '按作者': authors = {author.name for author in self.db.getAllAuthors()} model.setStringList(authors) elif attr == '按书单': booklists = { booklist.name for booklist in self.db.getAllBookLists() } model.setStringList(booklists) elif attr == '按标签': tags = self.db.getAllTags() model.setStringList(tags) elif attr == '按出版社': publishers = self.db.getAllPublishers() model.setStringList(publishers) else: # 按ISBN isbns = self.db.getAllISBNs() model.setStringList(isbns) self.inputCompleter.setModel(model)
def __init__(self): super().__init__() uic.loadUi('mainwindow.ui', self) self.action_Open.triggered.connect(self.open_file) self.image_labels = self.findChildren(QLabel, QRegExp("image_slice_label_.")) self.image_sliders = self.findChildren(QSlider, QRegExp("image_slider_.")) self.image_viewers = self.findChildren(QGraphicsView, QRegExp("image_viewer_.")) self.contrast_sliders = self.findChildren( QSlider, QRegExp("image_contrast_.*_slider")) self.points_list = self.findChild(QListView, 'points_list') self.points_model = QStringListModel() self.points = [] self.points_list.setModel(self.points_model) self.setWindowTitle('Nifti viewer') self.show() # redraw viewers whenever a slider is moved for i in range(3): self.image_sliders[i].valueChanged.connect( lambda value, i=i: self.draw_viewer(i)) # redraw all viewers whenever a contrast slider is moved for slider in self.contrast_sliders: slider.valueChanged.connect(self.draw_viewers) self.image_cycle_slider.valueChanged.connect(self.cycle_images)
def __init__(self, parent=None): super(ListViewDemo_items, self).__init__(parent) self.resize(300, 270) self.setWindowTitle('ITEMS') layout = QVBoxLayout() listview = QListView() slm = QStringListModel() self.qList = items_ID self.qList1 = items_name self.qList2 = produce_time self.qList3 = items_price self.qList4 = period self.qList5 = order_num self.qList6 = sold_num slm.setStringList(self.qList) listview.setModel(slm) listview.clicked.connect(self.clicked) layout.addWidget(listview) self.setLayout(layout)
def add_code_list(self, code_list): model = QStringListModel() model.setStringList(code_list) completer = QtWidgets.QCompleter() completer.setModel(model) self.widgets[self.KEY_code].setCompleter(completer) self.code_list = code_list
def __init__(self, main_window: 'ElectrumWindow', account_id: int) -> None: super().__init__(main_window) self._main_window = weakref.proxy(main_window) self._account_id = account_id self._account = main_window._wallet.get_account(account_id) self._logger = logs.get_logger(f"send_view[{self._account_id}]") self._is_max = False self._not_enough_funds = False self._require_fee_update: Optional[int] = None self._payment_request: Optional[PaymentRequest] = None self._completions = QStringListModel() self.setLayout(self.create_send_layout()) self.payment_request_ok_signal.connect(self.payment_request_ok) self.payment_request_error_signal.connect(self.payment_request_error) self.payment_request_import_error_signal.connect( self._payment_request_import_error) self.payment_request_imported_signal.connect( self._payment_request_imported) self.payment_request_deleted_signal.connect( self._payment_request_deleted) self._main_window.wallet_setting_changed_signal.connect( self._on_wallet_setting_changed)
def initUI(self): self.setWindowTitle('호텔 인도자') # 팀명으로 제목 지정 self.cmb_hotel_type.addItem('숙박 유형 전체') self.cmb_hotel_type.addItem('호스텔') self.cmb_hotel_type.addItem('호텔') self.cmb_hotel_type.addItem('게스트 하우스') self.cmb_hotel_type.addItem('모텔') self.type = self.cmb_hotel_type.currentText() print('타입', self.type) self.btn_exec.clicked.connect(self.btn_exec_clicked_slot) self.btn_hotel.clicked.connect(self.btn_hotel_clicked_slot) self.cmb_hotel_type.currentIndexChanged.connect(self.set_hotel_type) self.btn_1.clicked.connect(self.btn_1_clicked) self.btn_2.clicked.connect(self.btn_2_clicked) self.btn_3.clicked.connect(self.btn_3_clicked) # 자동 완성 기능 title_list = list(self.df_hotel['hotel_title']) model = QStringListModel() model.setStringList(title_list) completer = QCompleter() completer.setModel(model) self.le_hotel.setCompleter(completer)
def __init__(self, parent, *args, **kwargs): super(MemoryMappingWidget, self).__init__("Memory map", parent) self.log = self.parentWidget().log layout = QVBoxLayout() self.__memory_mapping = [ MemorySection(".text", 0x00004000, 0x1000, "READ|EXEC"), MemorySection(".data", 0x00005000, 0x1000, "READ|WRITE"), MemorySection(".stack", 0x00006000, 0x4000, "READ|WRITE"), MemorySection(".misc", 0x0000a000, 0x1000, "ALL"), ] self.model = QStringListModel() self.model.setStringList(self.memory_mapping_str) self.view = QListView() self.view.setModel(self.model) layout.addWidget(self.view) buttons = QHBoxLayout() btn_add = QPushButton("Add Section") buttons.addWidget(btn_add) btn_add.clicked.connect(self.onAddSectionButtonClicked) buttons.addStretch(1) btn_del = QPushButton("Remove Section") btn_del.clicked.connect(self.onDeleteSectionButtonClicked) buttons.addWidget(btn_del) layout.addLayout(buttons) w = QWidget(self) w.setLayout(layout) self.setWidget(w) return
def __init__(self, data, info, parent=None): """ Constructor @param data contents to be edited (string) @param info info string to show at the header (string) @param parent reference to the parent widget (QWidget) """ super(SpellingDictionaryEditDialog, self).__init__(parent) self.setupUi(self) self.infoLabel.setText(info) self.__model = QStringListModel(data.splitlines(), self) self.__model.sort(0) self.__proxyModel = QSortFilterProxyModel(self) self.__proxyModel.setFilterCaseSensitivity(Qt.CaseInsensitive) self.__proxyModel.setDynamicSortFilter(True) self.__proxyModel.setSourceModel(self.__model) self.wordList.setModel(self.__proxyModel) self.searchEdit.textChanged.connect( self.__proxyModel.setFilterFixedString) self.removeButton.clicked.connect(self.wordList.removeSelected) self.removeAllButton.clicked.connect(self.wordList.removeAll)
def init_pic_ui(self): self.box_pic_main = QVBoxLayout() box_pic_source = QVBoxLayout() btngrp_pic_source = QButtonGroup(self) radio_random_test = QRadioButton('在测试图片中随机选取一张') radio_random_test.toggled.connect(lambda: self.source_radio_state_changed(radio_random_test)) radio_local_pic = QRadioButton('选择本地图片文件:') radio_local_pic.toggled.connect(lambda: self.source_radio_state_changed(radio_local_pic)) btngrp_pic_source.addButton(radio_random_test) btngrp_pic_source.addButton(radio_local_pic) box_pic_source.addWidget(radio_random_test) box_pic_source.addWidget(radio_local_pic) box_pic_choose = QHBoxLayout() self.list_pic_path = QListView() self.list_pic_path.setEditTriggers(QAbstractItemView.NoEditTriggers) self.string_model = QStringListModel() self.btn_explore_files = QPushButton('浏览') self.btn_explore_files.setDisabled(True) self.btn_explore_files.clicked.connect(self.show_file_dialog) box_pic_choose.addWidget(self.list_pic_path) box_pic_choose.addWidget(self.btn_explore_files) self.btn_launch = QPushButton('Launch') self.btn_launch.setDisabled(True) self.btn_launch.clicked.connect(lambda: mask_rcnn_detect_pic(self.picSourceType, self.picFilePaths)) self.box_pic_main.addLayout(box_pic_source) self.box_pic_main.addLayout(box_pic_choose) self.box_pic_main.addWidget(self.btn_launch, alignment=Qt.AlignCenter)
def update_list(self): slm = QStringListModel() string_list = [] for i in range(len(self.qlabel.rectangle_label)): string_list.append( LABEL_LIST[self.qlabel.rectangle_label[i].label]) slm.setStringList(string_list) self.listview.setModel(slm)
def showAvailableHosts(self): if not self.availableHosts: self.showNoAvailableHostsBox() return self.hostsView = QListView() model = QStringListModel(self.availableHosts) self.hostsView.setModel(model) self.hostsView.show()
def add_server(self): server_config = ServerConfigurationDialog(self.addServerTemplateText, self.conf, self).open() if server_config is not None: self.conf.save_server_config(server_config) urls = self.ui.cctrayPathList.model().stringList() urls.append(server_config.url) self.ui.cctrayPathList.setModel(QStringListModel(urls))
def user_offline(self, client: Client, response): username = response['data'] self.users.remove(username) self.history.pop(username) self.list_users.setModel(QStringListModel(self.users)) if self.curr_select == username: # 当前选择用户是下线的用户时, 刷新聊天框 self.curr_select = self.public_room_name self.refresh_history(self.history[self.public_room_name])
def initiate_completer(codes): edit = thirdPage.lineEditCode completer = QCompleter() edit.setCompleter(completer) model = QStringListModel() model.setStringList(codes) completer.setModel(model) edit.show()
def __autocomplete_delegue(self): """ Event d'autocomplete de la saisie de délègue :return: """ result = ControllerView.rechercher_personne_delegue( self.textDelegue.text()) self.completer_text_delegue.setModel(QStringListModel(result))
def refresh_user_list(self, client: Client, response): self.users = set(response['data']) self.users.add(self.public_room_name) for username in self.users: self.history[username] = [] client.send_dh_request(username, True) # 发送握手请求 self.list_users.setModel(QStringListModel(self.users))
def _add_define_name(self): self.screen_name = QLineEdit(self) self.history_model = QStringListModel(self.config.history, self) self.completer = QCompleter(self.history_model, self) self.screen_name.setCompleter(self.completer) self.screen_name.setPlaceholderText("File name") self.layout.addWidget(self.screen_name, self.current_row, 0) self.current_row += 1
def studentInformation(self): """ 查看学生信息操作槽函数 """ with open('studentInformation.txt', 'r', encoding='utf-8') as file: slm = QStringListModel() lines = file.readlines() print(lines) slm.setStringList(lines) self.studentInformation_lv.setModel(slm)
def initModelView(self): self.trackModel = TrackModel() self.ui.trackList.setModel(self.trackModel) self.moduleModel = ModuleModel() self.ui.moduleList.setModel(self.moduleModel) self.patternModel = PatternModel() self.ui.patternCombox.setModel(self.patternModel) self.noteModel = NoteModel() self.ui.noteList.setModel(self.noteModel) self.synthModel = QStringListModel() self.ui.synthList.setModel(self.synthModel) self.drumModel = QStringListModel() self.ui.drumList.setModel(self.drumModel) self.noteModel.dataChanged.connect( self.updateModulesWithChangedPattern) self.noteModel.reloadNoteParameters.connect(self.noteLoad)
def ShowThisBatchNotReadyWordList(self): RemainWordList = list( set(self.CurrentBatchWordList) - set(self.CurrentMatchMemYesList)) slm = QStringListModel() # 设置模型列表视图,加载数据列表 slm.setStringList(RemainWordList) # 设置列表视图的模型 self.WordsListViewer.setModel(slm)
def __init__(self, parent=None): super().__init__(parent) self.ui = Ui_Index_gasAnalysis() self.ui.setupUi(self) self.model = QStringListModel(self) self.ui.listView.setModel(self.model) self.ui.listView.setEditTriggers(QAbstractItemView.NoEditTriggers)