ListViewの編集
ListViewにアイテムを追加したり、選択したアイテム行を削除する方法。
簡単なサンプルコードを下に示す。ここでは、Addボタンを押すと決まった文字列を追加する。アイテム行を選択してRemoveボタンを押すと行を削除する。行が選択されていなければ何もしない。
import System.Drawing import System.Windows.Forms from System.Drawing import * from System.Windows.Forms import * class MainForm(Form): def __init__(self): self.InitializeComponent() def InitializeComponent(self): listViewItem11 = System.Windows.Forms.ListViewItem("Line 1") listViewItem12 = System.Windows.Forms.ListViewItem("List 2") self._button1 = System.Windows.Forms.Button() self._listView1 = System.Windows.Forms.ListView() self._button2 = System.Windows.Forms.Button() self.SuspendLayout() # # button1 # self._button1.Font = System.Drawing.Font("メイリオ", 9, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, 128) self._button1.Location = System.Drawing.Point(23, 24) self._button1.Name = "button1" self._button1.Size = System.Drawing.Size(75, 23) self._button1.TabIndex = 0 self._button1.Text = "Add" self._button1.UseVisualStyleBackColor = True self._button1.Click += self.Button1Click # # listView1 # self._listView1.Font = System.Drawing.Font("メイリオ", 9, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, 128) self._listView1.Items.AddRange(System.Array[System.Windows.Forms.ListViewItem]( [listViewItem11, listViewItem12])) self._listView1.Location = System.Drawing.Point(23, 75) self._listView1.Name = "listView1" self._listView1.Size = System.Drawing.Size(233, 164) self._listView1.TabIndex = 1 self._listView1.UseCompatibleStateImageBehavior = False self._listView1.View = System.Windows.Forms.View.List # # button2 # self._button2.Font = System.Drawing.Font("メイリオ", 9, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, 128) self._button2.Location = System.Drawing.Point(114, 24) self._button2.Name = "button2" self._button2.Size = System.Drawing.Size(75, 23) self._button2.TabIndex = 2 self._button2.Text = "Remove" self._button2.UseVisualStyleBackColor = True self._button2.Click += self.Button2Click # # MainForm # self.ClientSize = System.Drawing.Size(284, 262) self.Controls.Add(self._button2) self.Controls.Add(self._listView1) self.Controls.Add(self._button1) self.Name = "MainForm" self.Text = "test3" self.ResumeLayout(False) def Button1Click(self, sender, e): # Add item msg = "added new line" self._listView1.Items.Add(msg) def Button2Click(self, sender, e): # Delete selected item if self._listView1.SelectedIndices.Count != 0: item = self._listView1.SelectedItems[0] self._listView1.Items.Remove(item) else: print "item is not selected."
実行例は以下の通り。