Здраствуйте.Я недавно приобрел Delphi,но вот проблема книги нет.Не подскажите где можна бесплатно достать электронные версии любого самоучителя по DELPHI.
Доброе время суток, Priest! Первый раз о таком слышу! Я пробовал Google, Rambler, Яndex - и они тоже ничего не знают. Напиши подробнее плз - что это такое и где оно встречается? Может, по-другому просто называется? Ответ отправлен: 03.09.2002, 11:47 Отправитель: baldr
Вопрос № 166
DBISAM Database. Привет всем экспертам! Кто-то знает формат файлов базы данных DBISAM? Нужно просто по зарез! Надеюсь кто-то выручит.
Доброе время суток, Priest! Глянь по этим ссылкам - может по теме? А вообще тебе именно формат? Говорят, есть компонент в поставке с Delphi 4, который с такими базами работает? http://www.elevatesoft.com/ - тут, кажется то, что тебе надо? http://www.delphiplus.org/ - а компоненты поищи тут. Все ссылки получены Гуглом...
Ответ отправлен: 03.09.2002, 12:05 Отправитель: baldr Отвечает Jadd
Доброе время суток, Priest! А формат очень простой: база с расширением *.dat Кстати эта либа(читай компонента) сама могет таблички и базы творить Ответ отправлен: 04.09.2002, 02:09 Отправитель: Jadd
Вопрос № 167
Здравствуйте. Подскажите пожалуйста как реализовать следующую задачу. Есть куча страниц (TabControl), на каждой странице несколько лабелов (Label) и эдитов (Edit), сколько и какие у них имена не известно. Надо прочитать текст из всех эдитов. Я пытаюсь сделать так: var p,i:integer; s:string; Tn:TcomponentName; begin p:=pc.ActivePageIndex; //активная страница //проверить надо все контролы for i:=0 to pc.Pages[p].ControlCount-1 do begin //если контрол лабел, то нам не надо, //а все остальные эдиты if pc.Pages[p].Controls[i].ClassType <> TLabel then begin {А здесь мы можем получить либо стринг с именем контрола, либо TComponentName его же, НО ЧТО С ЭТИМ ДЕЛАТЬ и как получить текст из этого контрола??? } s:=pc.Pages[p].Controls[i].GetNamePath; Tn:=pc.Pages[p].Controls[i].Name; ?????????????????????
end; end; end; Подскажите пожалуйста. Может Вы предложите свой вариант решения этой задачи.
Здравствуйте, Andy Bitoff! p:=pc.ActivePageIndex; for i:=0 to pc.Pages[p].ControlCount-1 do begin if pc.Pages[p].Controls[i] is TEdit then//проверяем, является ли Edit-ом begin Tn:=TEdit(pc.Pages[p].Controls[i]).Name;//получаем имя s:=TEdit(pc.Pages[p].Controls[i]).Text;//получаем текст end; end;
Ответ отправлен: 06.09.2002, 08:32 Отправитель: Ekaterina Отвечает Артём Шегеда
Добрый день, Andy Bitoff!
Это стиль программ Pascal. Ты же работаешь с ObjectPascal. Делай так:
Приложение: Ответ отправлен: 05.09.2002, 12:01 Отправитель: Артём Шегеда Отвечает Jadd
Приветствую Вас, Andy Bitoff! Подсказываю идею: есть такой вот оператор AS (гляди в хелпе), ему иногда помогает is (гляди там же). Намек понял? В екзамплах к дельфям есть екзампл drug and drop (твой друг и капля никотина :))) ). Там реализован подобный механизм определения класса во время выполненния (RTTI). Отсюда вся поляска и начинается. Ответ отправлен: 05.09.2002, 12:27 Отправитель: Jadd Отвечает Pablo
Здравствуй, Andy Bitoff! В Билдере можно было делать так: s = ((TEdit *)(pc->Pages[p]->Controls[i]))->Text; То есть преобразуя тип контрола в TEdit и читая из его свойства Text значение. В Дельфях это как-то делается с помощью директивы as. Ответ отправлен: 05.09.2002, 12:41 Отправитель: Pablo
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.