どのように複数選択リストボックスから、ルビー Glade/GTKは、その使用が可能?

StackOverflow https://stackoverflow.com/questions/1210602

質問

私として生まれ変わろうとしている複数を選択しlistbox glade/rubyプログラムとんかつは、このような要素を追加するウィンドウを対応するコード例は、使用できます.んでGTKListがいましたが推奨されていません、現在もないわからないかれているrubyなどがある。GTKリストdocsも利用可能でわからないかを設定する。

かいようなことは、ユーザが選択可能な複数のエントリー数:

altテキストhttp://geekswithblogs.net/images/geekswithblogs_net/dotNETvinz/OutputPreselectListBox.JPG

感謝を!私は本当に必死ない。

役に立ちましたか?

解決

基本的には使用GtkTreeView設定"モデル"プロパティをGtkListStoreが含まれます。GtkTreeViewの管理を選択GtkTreeSelectionクラスです。利用gtk_tree_view_get_selection(またはそれにマップされるruby-gtk)のGtkTreeSelection.設定の選択モードを"複数".

以下に例を示します。Ruby/Gtkできます。

import pygtk
pygtk.require('2.0')
import gtk
import gobject


w = gtk.Window()
w.connect('destroy', lambda w:gtk.main_quit())

l = gtk.ListStore(gobject.TYPE_STRING)

l.append(('Vinz',))
l.append(('Jhen',))
l.append(('Chris',))
l.append(('Shynne',))

treeview = gtk.TreeView()
treeview.set_model(l)

column = gtk.TreeViewColumn()
cell = gtk.CellRendererText()
column.pack_start(cell)
column.add_attribute(cell,'text',0)
treeview.append_column(column)

treeview.get_selection().set_mode(gtk.SELECTION_MULTIPLE)

def print_selected(treeselection):
    (model,pathlist)=treeselection.get_selected_rows()
    print pathlist

treeview.get_selection().connect('changed',lambda s: print_selected(s))

w.add(treeview)

w.show_all()

gtk.main()

他のヒント

以上の答えが正しいものを書くでvisualrubyでやろ:

class MyList < VR::Listview

  def initialize(:employee_names => String)
    add_row(:employee_names => "Vince")
    add_row(:employee_names => "Jhen")
    add_row(:employee_names => "Chris")
    add_row(:employee_names => "Shynne")
  end

end

この設定も同様の例を含む。

その場でチェックを入れscrolledwindow:

class GUI

  include GladeGUI

  def initialize()
    load_glade(__FILE__)
    @builder("Scrolledwindow1").add(MyList.new)
    show_window()
  end

end

Go to:

http://www.visualruby.net

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top