Показать сообщение отдельно
  #2  
Старый 06.08.2019, 15:00
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Как-то так:
Код:
type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    procedure ComboBox1DropDown(Sender: TObject);
  private
    { Private declarations }
    function CheckTextInList(AList:TStrings; AText:string):Boolean;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TForm1.CheckTextInList(AList: TStrings; AText: string): Boolean;
{
  Функция проверяет есть ли строчка в списке
}
var
  i: Integer;
begin
  Result:=True;
  for i := 0 to AList.Count-1 do
    if AList[i]=AText then
      Exit;
  Result:=False;
end;

procedure TForm1.ComboBox1DropDown(Sender: TObject);
{
  Событие при раскрытии списка. Нажатие на "треугольничик"
}
begin
  if Trim(ComboBox1.Text)='' then   //Если ничего нет - выходим
    Exit;
  if CheckTextInList(ComboBox1.Items,ComboBox1.Text) then  //Если тескт уже в списке - выходим
    Exit;
  ComboBox1.Items.Append(ComboBox1.Text);  //Добаляем текст в список
end;
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием