Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 755
от 20.03.2007, 03:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 441, Экспертов: 68
В номере:Вопросов: 2, Ответов: 6


Вопрос № 78197: Здравствуйте! У меня на форме много DBGrid-ов как определить, какой из них активен, то есть, на какой таблице курсор. Я сделал но используя переменные и кучу процедур которые реагируют на клик по таблице это, по-моему, не корректно и запутано подскаж...
Вопрос № 78273: Уважаемые Товарисчи Эксперты! Возникла необходимость работать в программе с INI файлом(для записи и редактирования параметров и т.д., последующей загрузки). Каким способом с ним можно работать? Знаю это позволяет TRegIniFile, вот только кто-бы по...

Вопрос № 78.197
Здравствуйте! У меня на форме много DBGrid-ов как определить, какой из них активен, то есть, на какой таблице курсор. Я сделал но используя переменные и кучу процедур которые реагируют на клик по таблице это, по-моему, не корректно и запутано подскажите, пожалуйста как сделать это правильно.

Заранее благодарен!
Отправлен: 14.03.2007, 08:09
Вопрос задал: Rashit (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Ерёмин Андрей
Здравствуйте, Rashit!
Можно сделать следующим образом. Такая запись как Self.ActiveControl.Name; выдаст имя компонента, активного в данный момент, т.е. имеющего фокус. Имя - "Button1", "Edit1" и т.п. Ну а дальше просто выполняйте нужные операции с этой строкой. Очевидное преимущество - это будет именно строка String, т.е. обрабатывать её можно как угодно. Желаю удачи!
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Россия, Тула
WWW: Программирование на Delphi. Помощь, советы, обмен опытом.
ICQ: 286867644
----
Ответ отправлен: 14.03.2007, 08:47
Оценка за ответ: 5

Отвечает: Gh0stik
Здравствуйте, Rashit!

Можно конечно немного и по мудрить ;)

Вот пример который не менее эффективно выдает нужный результат:


var i:integer;

........

for i:=1 to 4 do {перебираем от 1 до последнего номера DBGrid}
if TDBGrid(FindComponent(format('DBGrid%d',[i]))).Focused {если фокус на нужном DBGrid}
then ShowMessage(format('DBGrid%d',[i])); {просто выводим его имя}

........


Good Luck!!!
---------
Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал)
Украина, Славянск
Организация: Славянский государственный педагогический университет (Кафедра алгебры)
ICQ: 289363162
----
Ответ отправлен: 14.03.2007, 10:46

Отвечает: Yumata
Здравствуйте, Rashit!
А зачем Вам ЗНАТЬ, какой грид активен? Важнее знать, на каком гриде "кликнули". А для этого в обработчике события можно использовать объект Sender!
if Sender is TDBGrid then
if TDBGrid(Sender).DataSource=MyDataSource...
---------
Кто хочет - найдет способ!
Ответ отправил: Yumata (статус: 1-ый класс)
Ответ отправлен: 14.03.2007, 14:21


Вопрос № 78.273
Уважаемые Товарисчи Эксперты!
Возникла необходимость работать в программе с INI файлом(для записи и редактирования параметров и т.д., последующей загрузки). Каким способом с ним можно работать? Знаю это позволяет TRegIniFile, вот только кто-бы подсказал сам пример, или кто знает ссылку на таковой в Интеренете.
Заранее благодарен, Ustas.
Отправлен: 14.03.2007, 16:59
Вопрос задал: Ustas (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: W@NDeReR
Здравствуйте, Ustas!
----------------
Сохранение
var
save: TIniFile;
save:= TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'имя файла.ini');
save.WriteInteger('Grypa', '11', перменная для сохранения);
save.free
end;
---------------
Загрузка
var
load: TIniFile;
begin
load:=TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'имя файла.ini');
загружаемая переменная:=load.ReadInteger('Grypa','11',0);
load.free
end;

Ответ отправил: W@NDeReR (статус: 2-ой класс)
Ответ отправлен: 14.03.2007, 17:35
Оценка за ответ: 5
Комментарий оценки:
Чтож, благодарю, вы описали пример, это кок-раз то что и было надо, все понятно.

Отвечает: Архангельский Андрей Германович
Здравствуйте, Ustas!

Ссылка здесь
http://www.az-design.ru/Support/SoftWare/Delphi/D3/SB04.shtml
---------
Если дело заслуживает быть сделаным, то оно заслуживает, чтобы его сделали ХОРОШО
Ответ отправил: Архангельский Андрей Германович (статус: Специалист)
Ответ отправлен: 14.03.2007, 17:38
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо, все ответы не остануться без внимания, большое спасибо за статью в интеренете, спасибо за то что не поленились найти и написать ответ.

Отвечает: Ерёмин Андрей
Здравствуйте, Ustas!
В дополнение к предыдущим ответам. Вот статья по работе с ini-файлами и реестром:
Работа с реестром и INI-файлами в Delphi
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Россия, Тула
WWW: Программирование на Delphi. Помощь, советы, обмен опытом.
ICQ: 286867644
----
Ответ отправлен: 14.03.2007, 18:44
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо, тоже наглядный пример, очень помог. Благодарю за то что тоже не поленились найти ссылку и ответить


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

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


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.46 от 18.03.2007
Яндекс Rambler's Top100

В избранное