Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.11;
Скачать: CL | DM;

Вниз

TMemoField.Text и присвоение строки String   Найти похожие ветки 

 
frost ©   (2003-08-21 10:40) [0]

Пытаюсь написать TMemoField(.."МЕМО".).Text:=Str где Str - строка
типа string, компилирую пытаюсь присвоить, ошибка! Пишу
..."MEMO").AsString:=Str все нормально, поле Memo имеет тип TMemoField, почему тогда я немогу присвоить свойству TEXT обычную строку и мне надо преобразовывать поле в String.


 
Vlad ©   (2003-08-21 10:53) [1]

А что у тебя в скобках, если не секрет ?
У меня твой пример компилируется нормально.


 
sniknik ©   (2003-08-21 11:07) [2]

Vlad © (21.08.03 10:53) [1]
не может быть! у меня дало ошибку на "..". :о))

> почему тогда я немогу присвоить свойству TEXT обычную строку и мне надо преобразовывать поле в String
а что значит "обычная строка" и чем String необычна?

думаю причина именно в "обычной строке" и в точечках в коде.


 
Vlad ©   (2003-08-21 11:18) [3]

Вобще действительно, а чем тебя AsString не устраивает ?
>>и мне надо преобразовывать поле в String.
AsString НЕ преобразовывает поле. Это проперть TField"а.
Так что смело пользуйся.


 
frost ©   (2003-08-21 13:47) [4]

Кусок кода, который компел. нормально но при работе выдает исключение

tbCategory.FieldByName("KeyWord").AsString:=slText.Strings[integer(tvC ategory.Items[i].Data)];
tbCategory - TADOTable
KeyWord - поле TMemoField
slText - TStringList
tvCategory - TTreeView


 
sniknik ©   (2003-08-21 13:58) [5]

tvCategory - TTreeView - Items[i].Data - тип указатель (Pointer) приведенный к интеджеру может быть очччеень большим, уверен что у тебя есть столько строк в списке? или он полезет в недоступную память? (что вероятнее).


 
Vlad ©   (2003-08-21 14:46) [6]

Надо не к integer преобразовывать, а к тому типу, ссылку на который ты в TreeView хранишь


 
frost ©   (2003-08-21 17:21) [7]

Почему не integer, в чем сдесь проблема? Я храню указатель на номер строки в TStringList можно конечно и на саму строку но так как я делаю удобней (для моей задачи).
sniknik - "...тип указатель (Pointer) приведенный к интеджеру может быть очччеень большим.." - непонял о чем идет речь? Если речь идет о кол-ве строк TStringList.Count то при использовании
integer(tvC ategory.Items[i].Data) - я это число проверяю на больше меньше TStringList.Count.


 
sniknik ©   (2003-08-21 17:34) [8]

> - непонял о чем идет речь?

для наглядности

var p: pointer;
i: integer;
begin
i:= 10;
p:= @i;
Label1.Caption:= inttostr(integer(p)); //что вернет? а ведь это твой вариант тип поинтер указатель на интеджер
Label2.Caption:= inttostr(integer(p^));
end;


 
Zelius ©   (2003-08-21 17:50) [9]


> frost © (21.08.03 13:47) [4]

написано у тебя нормально, просто тебе надо разобраться какой исключение и где выскакивает.



Страницы: 1 вся ветка

Текущий архив: 2003.09.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
14-33780
Igo
2003-08-23 10:44
2003.09.11
Служебные символы в xml


3-33498
AleksG
2003-08-20 12:03
2003.09.11
...stored procedures с параметром


14-33776
Soft
2003-08-23 13:39
2003.09.11
ИСПОВЕДЬ ХЭККЕРА


1-33655
qwerty2
2003-09-01 16:39
2003.09.11
Как избавиться от песочных часов в курсоре


1-33568
Pirat
2003-08-28 12:15
2003.09.11
странный глюк TListView