2017-05-15 11 views
1

インターネットからXMLファイルを受信しました(XMLの値は、通貨が異なるため、異なる場合があります)。そして、それをリストボックス1にロードします。ユーザーはリストボックス2にいくつかのボタン(1つずつ、すべて、削除など)で項目を追加できます。だから私は重複を避けたい。私はこれを行う方法を見つけることができません。Inno Setupのリストボックスとコンボボックスに重複している項目がないようにしますか?

マイリストボックス:

enter image description here

はここに私のコードです(XML解析の一部について、How to read multiple XML nodes? (Inno Setup)を参照してください):

XMLNodeList := XMLDocument.SelectNodes('//listaPaises/item'); 
for Index := 0 to XMLNodeList.length - 1 do 
begin 
    XMLNode := XMLNodeList.item[Index]; 

    { Add country } 
    comboBoxPais.Items.Add(XMLNode.SelectSingleNode('name').Text); 

    { Add currency } 
    listBoxMonedasDisponibles.Items.Add(XMLNode.SelectSingleNode('suggestedCurrency').Text); 

    listBoxMonedasDisponibles.ItemIndex := 0; 
    comboBoxPais.ItemIndex := 0; 
end; 

答えて

1
両方 TComboBox.Items

TListBox.ItemsはタイプTStringsです。

TStrings.IndexOfを使用して、指定された文字列がすでに存在するかどうかをテストします。文字列が存在しない場合は、負の数(-1)を返します。

{ Add S only, if not present already } 
if comboBox.Items.IndexOf(S) < 0 then 
    comboBox.Items.Add(S); 
関連する問題