XE7.1でFMXでWindowsアプリで試しています。
リストボックスの使い方についてお教えいただけませんでしょうか。
リストボックスのアイテムにチェックボックスをつけたいのですが、
以下のコードだと最初の見た目はチェックボックスが見えません。
一度スクロールさせて画面から見えなくなったものは、
スクロールさせて戻すとチェックボックスが見えるようになります。
使用方法に誤りがあるのでしょうか。
ご教授いただけませんでしょうか。
よろしくお願いします。
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
item : TListBoxItem;
begin
//リストをクリア
ListBox1.Clear;
try
ListBox1.Items.Clear;
ListBox1.ShowCheckboxes := true;
ListBox1.BeginUpdate;
for i := 0 to 20 do begin
item := TListBoxItem.Create(ListBox1);
item.StyleLookup := 'listboxitemnodetail';
item.ItemData.Accessory := TListBoxItemData.TAccessory(0);
item.Height := 44;
item.Text := 'Name' + IntToStr(i);
if odd(i) then
item.IsChecked := true;
ListBox1.AddObject(item);
end;
finally
ListBox1.EndUpdate;
end;
end;
>使用方法に誤りがあるのでしょうか。
正:使用方法に誤りがあると思います。
#思い込みが激しい。
XE7では一度スクロールしないとチェックボックスが表示されませんでしたが、
XE8ではスクロールしなくても正しく表示されました。
XE7の不具合の可能性が高いと思います。
山本隆さま
いつもお世話になっています。
XE7のバグではないかとの情報ありがとうございます。
XE7では、ItemData.Accessoryの変更(3)で対処することにします。
ありがとうございました。
ツイート | ![]() |