maxdddca123
Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Genri Выручай - запутался procedure BrowseOnClick(Sender: TObject); var res: Boolean; UserSelectDir: String; begin res:=BrowseForFolder('Веберите папку базы 1С', UserSelectDir, False); SelectedDir:= UserSelectDir; if res then begin for i:= 0 to Page.CheckListBox.Items.Count - 1 do if SelectedDir = Names[I] then MsgBox('Эта база уже присутствует в списке !', mbInformation, MB_OK); end; begin for i:= 0 to Page.CheckListBox.Items.Count - 1 do if SelectedDir <> Names[I] then begin Page.CheckListBox.AddCheckBox('1C Налогоплательщик', SelectedDir, 0, True, True, False, False, nil); RegWriteStringValue(HKEY_CURRENT_USER, 'Software\1C\1Cv7\7.7\Titles', SelectedDir, '1C Налогоплательщик'); end; end; end; Смысл такой: не дать пользователю добавить 2-у такую же базу в список баз. Не получается с if SelectedDir <> Names[I] then, он добавляет ещё лишние галочки, которых быть не должно... Т.Е, мне надо, что бы сначала проверялись все пункты по признаку :SelectedDir <> Names[I], и если во ВСЁМ списке нет базы, которую выбрал юзер (UserSelectDir), то добавлять 1 галочку с этой базой! Я понимаю, что он добавляет галки изза того, что например из 3-х баз 2 не совпадают, и он добавляет, но как это убрать ? Если понял меня помоги пожалуйста ! | Всего записей: 211 | Зарегистр. 14-12-2006 | Отправлено: 11:50 12-01-2007 | Исправлено: maxdddca123, 11:52 12-01-2007 |
|