Форум: "Базы";
Текущий архив: 2003.07.10;
Скачать: [xml.tar.bz2];
ВнизКак программно создать Найти похожие ветки
← →
NVO (2003-06-17 08:48) [0]Здравствуйте! Позвольте спросить кто знает как программно создать поле поиска
← →
Anatoly Podgoretsky (2003-06-17 08:58) [1]Загадка природы
← →
NVO (2003-06-17 09:22) [2]Anatoly Podgoretsky © (17.06.03 08:58)
;)
Нет а если серьезно?
← →
Соловьев (2003-06-17 09:24) [3]обьясни что ты понимаешь под "Поле поиска"?
← →
Johnmen (2003-06-17 09:24) [4]А что это такое ?
← →
NVO (2003-06-17 10:01) [5]Соловьев © (17.06.03 09:24)
обьясни что ты понимаешь под "Поле поиска"?
Когда ты входиш например в TQuery в редактор полей. Там в нем жмешь создать поле. после этого откроется окно и там будет группа переключателей, один из них называется "Поиск". Вот тоже и я хочу создать только программно
← →
Соловьев (2003-06-17 10:02) [6]
> там будет группа переключателей, один из них называется
> "Поиск".
нет там такого... может Lookup?
← →
Dred2k (2003-06-17 10:15) [7]
> один из них называется "Поиск".
Переведенная дельфя?
Офигеть...
← →
Zacho (2003-06-17 10:20) [8]
> Dred2k © (17.06.03 10:15)
А че, видел я такой диск с Д6. Правда, даже смотреть не стал, и так могу представить, как наши пираты могут перевести. Особенно то, что переводить вообще не нужно и даже вредно.
← →
NVO (2003-06-18 03:58) [9]Dred2k © (17.06.03 10:15)
Че вы внатуре как дикари никогда переведенную Дельфу не видали. Lookup по-вашему так сказать
← →
AlexGreG (2003-06-18 06:56) [10]У компонента DataSet есть коллекция определний полей FieldDefs, через которую можно надобавлять любых полей. Параметры задавай программно: тип поля Lookup, LookupList = откуда список брать, т.д. Потом в гриде, например, есть коллекция Columns, через которую создаёшь колонку. К ней привязывай своё LookUp-поле.
Удачи
← →
Danilka (2003-06-18 07:27) [11]AlexGreG © (18.06.03 06:56)
а вдруг у него все это хозяйство тоже переведено, да еще так-же "качественно" как и lookup...
не DataSet а какая-нить УстановкаДаты, не FieldDefs а ПолеДевса и т.д. :))
← →
Alexandr (2003-06-18 07:41) [12]короче, шел бы ты со своей русской дельфи
куда-нибудь подальше от дикарей....
А то прибьют еще...
← →
Zacho (2003-06-18 07:46) [13]
> NVO (18.06.03 03:58)
Хочешь хороший совет ? Поставь нормальную английскую Дельфи. А то такую терминологию, как в твоей "переведенной" никто из нормальных программистов просто не понимает. И если продолжишь с ней работать - будут у тебя проблемы и в общении с другими программерами, и с пониманием того что написано в литературе, ибо везде используются стандартные термины, а не придумки каких-то "гениев"-переводчиков.
← →
NVO (2003-06-18 08:49) [14]Соловьев © (17.06.03 10:02)
Lookup Lookup ДА ДА !!!
А в дельфе нехватает модуля CorbaObj.pas, и еще там менеджер проектов малость глючит, но вообще меня устраивает, нормально
← →
NVO (2003-06-18 08:56) [15]Danilka © (18.06.03 07:27)
Ага я еще программный код пишу по-русски вот так:
<...>
Для i:=0 по 4 сделать начать
УстановитьДлину(MyArr, 10);
M:=Программа.ИмяПрограммы;
Закончить;
Видали система ;)
← →
AlexGreG (2003-06-18 09:06) [16]NVO, я тоже на рус дельфи!
← →
Anatoly Podgoretsky (2003-06-18 09:15) [17]NVO (18.06.03 08:56)
Это твои проблемы
← →
NVO (2003-06-18 09:40) [18]AlexGreG © (18.06.03 06:56)
Наверное ты путаешь TFields c TFieldDef. У TFieldDef Нет ни св-ва LookupList и DataType там только для назначения типа поля(ftString, ftBlob...). Я пробовал и через Tfields добавить. Он пишет что такое поле не найдено.
with tPart.Fields.DataSet.FieldDefs.AddFieldDef do begin
Name:="MyType";
DataType:=ftString;
Width:=30;
Required:=True;
Visible:=True;
end;
//tPart.Fields[9].FieldKind:=fkLookup;
← →
Anatoly Podgoretsky (2003-06-18 10:06) [19]AddFieldDef is only valid in the context of creating field definitions for a table to be created with a subsequent call to the CreateTable or CreateDataSet method. It cannot be used to add fields to an already-existing table.
← →
AlexGreG (2003-06-18 10:10) [20]Ну хорошо, пусть будет TFields...
... здесь конечно ты загнул, потому что
tPart=tPart.Fields.DataSet
, но ладно.
tPart.Fields.DataSet.FieldDefs.AddFieldDef
Далее, попробуйtPart.Fields[tPart.Fields.count-1].FieldKind:=fkLookup;
сразу после создания поля.
Хотя я бы делал по-другому:
var fld: TField;
...
fld:=TField.Create(...);
fld.FieldKind:=fkLookup;
--др. установки--
tPart.fields.add(fld);
...
tPartGrid.Columns[NewColumnIndex].FieldName:=fld.Name;
...
Вот так. Дерзайте, сэр.
P.S.: Советую, зарегистрироваться, т.к. многие не будут отвечать не зарегистрированным ...
← →
NVO (2003-06-18 10:32) [21]AlexGreG © (18.06.03 10:10)
===========================================================
"tPart: Field "NAME2" cannot be a calculated or lookup field".
============================================================
Ничерта непойму, все так делаю, так как ты. Я еще раньше пробовал и такая дрянь выводилась :(((
← →
Zacho (2003-06-18 10:46) [22]
> NVO (18.06.03 10:32)
Ну, насколько я это помню, надо примерно так:
var
fld: TStringField; //Или другой наследник от TField нужного типа
begin
fld:=TStringField.Create(MyDataSet);
fld.FieldName:="MyFieldName";
fld.Index:=MyDataSet.FieldCount;
fld.DataSet:=MyDataSet;
fld.FieldKind:=fkLookup;
... и т.д. ...
MyDataSet.FieldDefs.UpDate;
end;
Хотя давно уже подобное не делал, могу и ошибиться.
← →
Соловьев (2003-06-18 10:56) [23]вобще-то форум надо читать...этот вопрос возникает каждые 2 дня...
http://delphimaster.net/view/3-1054907372/
← →
Anatoly Podgoretsky (2003-06-18 11:04) [24]Вообще то это делатеся просто и без форума, в дизайн тайм создается поле, затем из dfm скопировать почти готовый текс и применить это в рантайм. Одной головы достаточно.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.07.10;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.01 c