我们从Python开源项目中,提取了以下5个代码示例,用于说明如何使用gtk.ComboBox()。
def setup_gui_url_chooser(self): self.media_model = gtk.ListStore(str) self.media_type = gtk.ComboBox(self.media_model) cell = gtk.CellRendererText() self.media_type.pack_start(cell, True) self.media_type.add_attribute(cell, "text", 0) for t in ("file", "dvd", "tv", "dvb", "vcd", "radio", "cdda", "tivo"): self.media_model.append((t,)) self.media_location = gtk.Entry() self.media_server = gtk.Label() self.media_server.set_alignment(0, 0.5) d = catota.ui.Dialog("Choose Location", self.parent_win, extra_buttons=(gtk.STOCK_PREFERENCES, 1)) t = catota.ui.new_table((("Server:", self.media_server), ("Type:", self.media_type), ("Location:", self.media_location))) d.vbox.pack_start(t, True, True) self.gui_url_chooser = d # setup_gui_url_chooser()
def make_pixbuf_choice(options, default=None): store = gtk.ListStore(gtk.gdk.Pixbuf, gobject.TYPE_STRING) box = gtk.ComboBox(store) cell = gtk.CellRendererPixbuf() box.pack_start(cell, True) box.add_attribute(cell, "pixbuf", 0) cell = gtk.CellRendererText() box.pack_start(cell, True) box.add_attribute(cell, "text", 1) _default = None for pic, value in options: iter = store.append() store.set(iter, 0, pic, 1, value) if default == value: _default = options.index((pic, value)) if _default: box.set_active(_default) return box
def set_model_from_list(cb, items): """Setup a ComboBox or ComboBoxEntry based on a list of strings.""" model = gtk.ListStore(str) for i in items: model.append([i]) cb.set_model(model) if type(cb) == gtk.ComboBoxEntry: cb.set_text_column(0) elif type(cb) == gtk.ComboBox: cell = gtk.CellRendererText() cb.pack_start(cell, True) cb.add_attribute(cell, 'text', 0)
def setup_gui_preferences(self): self.player_path = gtk.Entry() self.player_params = gtk.Entry() self.player_ao_model = gtk.ListStore(str) self.player_ao = gtk.ComboBox(self.player_ao_model) cell = gtk.CellRendererText() self.player_ao.pack_start(cell, True) self.player_ao.add_attribute(cell, "text", 0) for t in ("esd", "gst"): self.player_ao_model.append((t,)) self.player_acodec_model = gtk.ListStore(str) self.player_acodec = gtk.ComboBox(self.player_acodec_model) cell = gtk.CellRendererText() self.player_acodec.pack_start(cell, True) self.player_acodec.add_attribute(cell, "text", 0) for t in ("ffmpeg", "dspmp3"): self.player_acodec_model.append((t,)) hbox = gtk.HBox(homogeneous=False, spacing=2) btn = gtk.Button(stock=gtk.STOCK_OPEN) hbox.pack_start(self.player_path, fill=True, expand=True) hbox.pack_start(btn, fill=True, expand=False) btn.connect("clicked", self._choose_mplayer_path) hbox.show_all() wids = ("MPlayer", ("Path:", hbox), ("Parameters:", self.player_params), ("Audio Output:", self.player_ao), ("Audio Codec:", self.player_acodec), ) self.gui_preferences = wids # setup_gui_preferences()
def on_okbutton1_clicked(self, widget, *args): for obj in self.tblGeneral: if hasattr(obj, "field"): if isinstance(obj, gtk.CheckButton): value = obj.get_active() elif isinstance(obj, gtk.SpinButton): value = obj.get_value_as_int() elif isinstance(obj, gtk.ComboBox): value = obj.get_active() else: value = '"%s"' % (obj.get_text()) exec("%s=%s" % (obj.field, value)) if self.get_widget("chkDefaultColors").get_active(): conf.FONT_COLOR="" conf.BACK_COLOR="" else: conf.FONT_COLOR = self.btnFColor.selected_color conf.BACK_COLOR = self.btnBColor.selected_color if self.btnFont.selected_font.to_string() != 'monospace' and not self.chkDefaultFont.get_active(): conf.FONT = self.btnFont.selected_font.to_string() else: conf.FONT = '' #Guardar shortcuts scuts={} for x in self.treeModel: if x[0]!='' and x[1]!='': scuts[x[1]] = [x[0]] for x in self.treeModel2: if x[0]!='' and x[1]!='': scuts[x[1]] = x[0] global shortcuts shortcuts = scuts #Boton donate global wMain if conf.HIDE_DONATE: wMain.get_widget("btnDonate").hide_all() else: wMain.get_widget("btnDonate").show_all() #Recrear menu de comandos personalizados wMain.populateCommandsMenu() wMain.writeConfig() self.get_widget("wConfig").destroy() #-- Wconfig.on_okbutton1_clicked } #-- Wconfig.on_btnBColor_clicked {