Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
5 / 5 / 1
Регистрация: 26.07.2012
Сообщений: 28

FindComponent ошибка

30.05.2014, 12:12. Показов 1532. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется база данных со значениями. Которые мне нужно отобразить на форме, но при поиске объекта происходит ошибка в CheckBox:
Delphi
1
2
3
4
5
6
  for i := 1 to Query.RecordCount do begin
    (FindComponent('frmNewTest.edt' + IntToStr(i)) as TsEdit).Text := QueryОтвет.Value; //  Без ошибок
    if QueryПравильность.Value = 'Да' then
      (FindComponent('frmNewTest.cb' + IntToStr(i)) as TCheckBox).Checked := true;      //Ошибка
    Query.Next;
  end;
Как правильно организовать Checked?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.05.2014, 12:12
Ответы с готовыми решениями:

Ошибка в FindComponent
Привет. Сделал вроде как программу, все было хорошо. В коде ничего не менял, ехе тоже, но через пару дней (тобиш сегодня) включаю ее, а она...

Есть подобное findcomponent, только для переменной?
Есть подобное findcomponent, только для переменной?

Ошибка с FindComponent
Не могу разобраться с FindComponent. Создал тестовую форму, на ней: BitBtn - 4 шт Button -1 шт Изначально BitBtn имеют пустые...

5
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
30.05.2014, 14:20
FindComponent это функция.
0
Native x86
Эксперт Hardware
 Аватар для quwy
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
30.05.2014, 15:17
Лучший ответ Сообщение было отмечено Seventeen как решение

Решение

Seventeen, в FindComponent передается только имя компонента, без имени формы.
1
5 / 5 / 1
Регистрация: 26.07.2012
Сообщений: 28
30.05.2014, 15:23  [ТС]
(FindComponent('frmNewTest.edt' + IntToStr(i)) as TsEdit).Text := QueryОтвет.Value;
В этой строке работает всё без проблем, т.е. имя компонента находится и присваивается значение
0
Native x86
Эксперт Hardware
 Аватар для quwy
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
30.05.2014, 16:13
Не знаю что оно у вас там находит, но код поиска компонента такой:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
function TComponent.FindComponent(const AName: string): TComponent;
var
  I: Integer;
begin
  Result := nil;
  if (AName <> '') and (FComponents <> nil) then
  begin
    if FSortedComponents = nil then
    begin
      { Fill the sorted list (and sort it) }
      FSortedComponents := TList<TComponent>.Create;
      FSortedComponents.Count := FComponents.Count;
      for I := 0 to FComponents.Count - 1 do
        FSortedComponents[I] := FComponents[I];
 
      FSortedComponents.Sort(FComparer);
    end;
    Result := FindSortedComponent(AName, I);
  end;
end;
 
function TComponent.FindSortedComponent(const AName: string; var Index: Integer): TComponent;
var
  L, H, I, C: Integer;
begin
  L := 0;
  H := FSortedComponents.Count - 1;
  while L <= H do
  begin
    I := (L + H) shr 1;
*** Result := TComponent(FSortedComponents.List[I]);
*** C := CompareText(Result.Name, AName);
    if C < 0 then
      L := I + 1
    else
    begin
      H := I - 1;
      if C = 0 then
      begin
        Index := I;
        Exit;
      end;
    end;
  end;
  Index := L;
  Result := nil;
end;
Пометил звездочками место, где имя компонента сравнивается с искомой строкой. Имя формы там не фигурирует.
0
5 / 5 / 1
Регистрация: 26.07.2012
Сообщений: 28
30.05.2014, 17:05  [ТС]
Немного позже перекину на форму, попробую, отпишусь

Добавлено через 48 минут
Да, всё супер. Немного добавил условий на форме при которых это должно выполняться, без имени формы всё заработало!!! Благодарю за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.05.2014, 17:05
Помогаю со студенческими работами здесь

FindComponent ( в чем у меня ошибка???)
Есть Form1 (главная форма) Есть Form2(вызываемая форма) и на этой форме есть Image2..Image8 нужно используя FindComponent обработать...

Почему ошибка Undeclared identifier на функцию FindComponent?
Добрый вечер коллеги! Я что-то не понимаю почему у меня в коде кнопки FindComponent работает, а в рядом стоящей процедуре уже ругается...

Ошибка при работе с ComboBox при использовании FindComponent
Есть комбобокс, список в него загружается из стринггрида. Потом по выбранному значению в комбобоксе лабелю присваивается соответствующее...

findComponent
procedure TfmMain.Savedate; var I:integer; tempComponent:TlistBox; begin InputQuery('Введите полное имя...

FindComponent в VC++CLI
напишыте пожалуйста как должен етот код выглядеть на C++CLI вот мой код: private: System::Void button1_Click(System::Object^ ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru