Здравствуйте! Хочу добавить форму к проекту, но при вызове переменных добавленного модуля из главного выдается ошибка что Undeclared Identifier. Вы посоветовали написать в разделе: implementation uses qrlabelT in qrlabelT; Но в сожалению это не получилось. Ошибка была след:',' or ';' expected but 'IN' found. В ЧЕМ ЖЕ ТУТ ПРОБЛЕМА? Спасибо за все!!!
Здравствуйте, dude! А зачем слово in, оно зарезервировано и используется в других местах. надо было просто uses qrlabelT; где qrlabelT - имя модуля.
Ответ отправлен: 27.11.2002, 11:56 Отправитель: P@V Отвечает Артём Шегеда
Доброе время суток, dude!
Извините, моя ошибка. В документации Delphi в разделе "uses clause/The syntax of a uses clause" сказано: In the uses clause of a unit, you cannot use in to tell the compiler where to find a source file. Every unit must be in the compiler’s search path, Delphi’s Library search path, or the same directory as the unit that uses it. Moreover, unit names must match the names of their source files. То есть, ключевое слово 'in' использовать не нужно, тем более, что имя модуля совпадает с именем файла модуля - достаточно написать:
uses qrlabelT;
.
Ответ отправлен: 27.11.2002, 11:31 Отправитель: Артём Шегеда Отвечает Jadd
Здравствуйте, dude! Ты Паскаль где учил? Кто ж в uses пишет подобные вещи? Запомни! В этом разделе надо писать только название подключаемого dcu модуля. Пробуй или читай книги по Паскалю и модульному програзму. Ответ отправлен: 27.11.2002, 15:43 Отправитель: Jadd Отвечает Idle Sign
Доброе время суток, dude! ===== Pro bono publico, no bloody panico! ===== У-у-у, трудный случай. Ты же сам пишешь ',' or ';' expected but 'IN' found. Ну так и поставь ';' после qrlabelT, а остальное убери. Добавка: в uses'ах форм не указываются имена файлов модулей. Необходимо и достаточно указать название модуля.
Ответ отправлен: 27.11.2002, 20:08 Отправитель: Idle Sign
Вопрос № 306
Эксперты у меня есть к вам несколько вопросов. 1) Какие файлы нцжны, для того, чтобы программа (exe) откомпилированная в Delphi могла запускаться у другой машине, где не установлен Delphi, я читал, что нужны какие-то dll. 2)Как программно можно настроить ODBC. 3)Как правильно работать с QRExpr1. У меня такой код (см. в приложение), но он почемуто не чего в QuickReport не отображает.
Добрый день, bogdan! 1)borlndmm.dll, cc3250mt.dll и еще какая-то, если бде не юзаешь. Иначе просто легче использовать InstallShield 2) Ищи описание вункции SQLConfigDataSource в MSDN или пиши на jadd@rol.ru я пришлю пример. Но только после того, как ты сам пороешься и пришлель не просто письмо мол "шли", а с конкретными вопросами :). Эт шоб жисть малиной не казалась, мол щас за тебя все все напишут 3)Там есть ограничение одно. Свойство Expression нельзя менять во время генерации отчета. Может из-за этого и проблема. А так пиши так же, как видишь после визуальных манипуляций. Удачи Ответ отправлен: 29.11.2002, 04:13 Отправитель: Jadd
Вопрос № 307
При добавление формы в проект сделать project/add to project и написать в USES название добавляемого модуля это все мало! Переменные до сих пор являются неизвестными при попытке обрашения к ним с главного модуля. Вы что забываете сказать. Вы вообще пробовали так сделать?? Спасибо всем.
P.S Прошу Idle Sign НИКОГДА не отвечать на мои вопросы.
Добрый день, dude! Ну так, если отчет находится на другой форме - так и обращайся: Form2.quickrep1.preview
Ответ отправлен: 28.11.2002, 11:52 Отправитель: Vladimir Отвечает Jadd
Добрый день, dude! Блин! Да открой ты книгу по Дельфям. Открыл? Нет? Уйди мальчик и не мешай работать. Что? Да, открыл? Тогда читай внимательно в том месте, где говорится о доступе к переменным-членам класса. Твой quickrep1 ведь где-то находится (я про класс)? Так вот, когда ты пишешь quickrep1.preview - это значит, что quickrep1 находится в текущем классе, т.е. в том классе, откуда происходит вызов. Например, если кнопка находится на Form1, то компилятор думает, что quickrep1 - член класса TForm1. Но, судя по твоему примеру, это не так. Значит, тебе надо получить доступ(читай создать экземпляр класса, где объявлена твоя переменная) к классу. Т.е. запись должна быть такая: ЭкземплярТвоегоКласса.quickrep1.preview Все! И запомни золотое правило настоящего программиста, если не хочешь быть ламером до конца своей жизни: RTFM. Бывай. Ответ отправлен: 28.11.2002, 02:05 Отправитель: Jadd
Вопрос № 308
Добрый день! Научите правильно обновить TreeView, так, чтобы сохранились открытые ветки и активная строка. С уважением, Maus.
Добрый день, Maus! дык а в чем трабла? Надо добавить к текущему чилдрена? нет проблем: TreeView.Items.AddChild(TreeView.Selected, 'My new Child'); Если надо вообще перестроить дерево и при этом раскрыть все ноды и выделить нужный, то тут надо немного по-другому сделать. Перестраиваешь дерево. Делаешь TreeView.FullExpand, а затем ищем тот нод, который был выделен до того. Это - примерный алгоритм. Код пиши сам, дабы жиснь малиной не казалась :). Если никак - пиши на jadd@rol.ru и я тебе напишу как это сделать. Ответ отправлен: 29.11.2002, 02:47 Отправитель: Jadd
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.