|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Проблема при выводе в Label значения из запроса
Здравствуйте!
Возникла проблема при выводе в Label одного значения из запроса. БД Oracle. На данную форму в Label не выводится и выдает ошибку ''Access violation....'', а на другую форму выводит без ошибки. Код:
procedure TStart_test.Button4Click(Sender: TObject); var r,i: integer; begin DataModule2.OracleQuery2.Next; r:=DataModule2.OracleQuery2.Field('id_quest'); k:=0; DataModule2.OQuery.SQL.Add('select a.*,b.quest from answer a, quest b where a.id_quest='+IntToStr(r)+'and b.id_test='+IntToStr(form1.idtest)+'and a.id_quest=b.id_quest'); DataModule2.OQuery.Execute; Start_test.Label1.Caption:=DataModule2.OQuery.Field('quest'); mass[k]:=DataModule2.OQuery.Field('id_quest'); while not DataModule2.OQuery.Eof do begin inc(k); for i:=0 to ComponentCount-1 do begin if Components[i].Name = 'Edit' + IntToStr(k) then begin (Components[i] as TEdit).Text := DataModule2.OQuery.Field('Answer'); end; end; DataModule2.OQuery.Next; end; DataModule2.OQuery.Close; DataModule2.OQuery.Clear; end; |
#2
|
||||
|
||||
попробуй так:
Код:
Start_test.Label1.Caption:=DataModule2.OQuery.FieldByName('quest').AsString; Коли навчався в школі я - в мені росли мозгЫ. КудИж вони поділися? гы-гы гы-гы гы-гы... ICQ: 593977748 Nick: Marvel |
#3
|
|||
|
|||
Такого свойства в DAO нет, только то что написал в примере.
В showmessage выводит. А на форму нет |
#4
|
||||
|
||||
значит что-то с формой Start_test, я думаю она просто не создана в момент вывода текста на Label1
Коли навчався в школі я - в мені росли мозгЫ. КудИж вони поділися? гы-гы гы-гы гы-гы... ICQ: 593977748 Nick: Marvel |
#5
|
|||
|
|||
как проверить??
|
#6
|
||||
|
||||
ну это вначале надо знать как форма создается, динамически или статически, нажмите Ctrl+Shift+F11 в проекте, там выскочит окно, вкладка Forms, если форма Start_test находиться в Available forms, значит она создаётся динамически, точнее вы сами должны её создавать:
Код:
with TStart_test.Create(Self) do try ShowModal; finally Free; end; Коли навчався в школі я - в мені росли мозгЫ. КудИж вони поділися? гы-гы гы-гы гы-гы... ICQ: 593977748 Nick: Marvel Последний раз редактировалось Marvel, 02.07.2010 в 12:19. |
#7
|
|||
|
|||
форма находится в auto create
|
#8
|
|||
|
|||
Код:
Label1.Caption:=DataModule2.OQuery.Field('quest'); |
#9
|
|||
|
|||
Скорее всего, у вас кроме модуля Start_test, еще где-то повторно объявлена переменная Start_test
Код:
var Start_test: TStart_test |
#10
|
|||
|
|||
Цитата:
|