Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Invalid class typecast. [D6, IB6.x]


Drowsy ©   (2008-09-17 09:13:00) 

(FibPlus 1.5)
В модуле данных таблица AnyTable: tpFIBDataSet
На форме Grid
Grid.DataSource.DataSet := Anytable

Почему класс
dmDataModul.AnyTable.ClassName = tpFIBDataSet,
а
Grid.Datasource.Dataset.ClassName = TTable ?

var
   s : string;
begin

if (ActiveControl is TDBGrid) then
 with TDBGrid(ActiveControl) do begin
   s:= dmDataModul.AnyTable.ClassName; // s = 'tpFIBDataSet';
   s:= Datasource.Dataset.ClassName;   // s = 'TTable'

   if (Datasource.Dataset is tpFIBDataSet) then // FALSE
.......    


Drowsy   (2008-09-17 10:00:00) [1]

Спасибо, Винни, ты прав!
У тебя отличное зрение!!! :)


Drowsy   (2008-09-17 09:43:00) [2]

Удалено модератором


Drowsy   (2008-09-17 09:42:00) [3]

:))


Поросенок Винни-Пух   (2008-09-17 09:39:00) [4]

У меня все Set-ы типа tpFIBDataSet

И один TTable. Я даже отсюда вижу.


Поросенок Винни-Пух   (2008-09-17 09:38:00) [5]

s:= Datasource.Dataset.ClassName + ' ' + Datasource.Dataset.Name;


Drowsy   (2008-09-17 09:37:00) [6]

Непонятно.


Drowsy   (2008-09-17 09:37:00) [7]

У меня все Set-ы типа tpFIBDataSet


Поросенок Винни-Пух   (2008-09-17 09:34:00) [8]

И чего?
В области видимости есть еще одна anytable и это TTable


Drowsy   (2008-09-17 09:33:00) [9]

Так у меня так и есть:
var AnyTable: tpFIBDataSet;
.......
Grid.DataSource.DataSet := AnyTable;


Поросенок Винни-Пух   (2008-09-17 09:29:00) [10]

Можно.
Grid.DataSource.DataSet := pFibDataSet1;


Drowsy   (2008-09-17 09:28:00) [11]

А его можно переточить на другой тип - tpFIBDataSet?


Поросенок Винни-Пух   (2008-09-17 09:24:00) [12]

потому что грид у тебя наточен на TTable


Наверх

Титульная страница Поиск, карта сайта Написать письмо