Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 18.07.2011, 14:54
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию указатель на свойство(property)

вопрос знатокам - как можно записать в переменную свойство объекта (компонента) чтобы после записывать и читать его значение?
указатели не работают:
PHP код:
var
  
ppointer;
begin
  p 
:= @Form1.caption;
end
>>[Error]Variable required

смысл этого чтобы сделать отображение строк на переменные
для удобства записи и чтения из ini файлов в свойства и обратно

сейчас код на указателях с переменными работает ок
а со свойствами компонент - нет
Ответить с цитированием
  #2  
Старый 18.07.2011, 15:28
Аватар для dr. F.I.N.
dr. F.I.N. dr. F.I.N. вне форума
I Like it!
 
Регистрация: 12.12.2009
Адрес: Россия, г. Новосибирск
Сообщения: 660
Версия Delphi: D6/D7
Репутация: 26643
По умолчанию

Мне кажется, это будет выходом.
Немного подумать над реализацией и в путь!
__________________
Грамотно поставленный вопрос содержит не менее 50% ответа.
Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть.
Ответить с цитированием
Этот пользователь сказал Спасибо dr. F.I.N. за это полезное сообщение:
Pyro (22.12.2011)
  #3  
Старый 18.07.2011, 16:29
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Цитата:
смысл этого чтобы сделать отображение строк на переменные
для удобства записи и чтения из ini файлов в свойства и обратно
Поясни, что сказал.
Если ты хочешь хранить caption в ini то храни строки, зачем тебе указатели. Или я что то не так понял.
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!
Ответить с цитированием
  #4  
Старый 18.07.2011, 17:32
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

dr. F.I.N.
Спасибо! похоже это именно то что надо

Viajero
я делаю один объект чтобы когда надо добавить строку в ini файл -
надо добавить в программу только одну строку кода в процедуре;
а места где запись и чтение не трогать, и еще нечто подобное с реестром
завтра выложу если заработает со свойствами
PHP код:
procedure InitIni;
begin
inimap 
:= TiniManager.Create('ini.ini')
inimap.define('section''somevar''100'TInt.Create(@intvar));
inimap.define('section''somevar2''default'TStr.Create(@strvar));
inimap.define('section''somevar3''yes'TBool.Create(@boolvar));
end

PHP код:
inimap.write;
inimap.read

Последний раз редактировалось Pyro, 18.07.2011 в 17:51.
Ответить с цитированием
  #5  
Старый 19.07.2011, 15:13
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

почти все получилось
со свойствами сделал так:
PHP код:
ini.define('main''form-x''100'TProp.Create(Form1'left'));
ini.define('main''form-y''100'TProp.Create(Form1'top')); 
ещё велосипед с регистрацией типов файлов в реестре прикрутил
PHP код:
result := TRegAssoc.Create('txt');
result.defineIcon(Application.ExeName);
result.defineDefaultCommand('open');
result.defineCommand('open''open me!'Application.ExeName);
result.defineCommand('edit''edit me!''notepad'); 
PHP код:
if not result.check then
begin
  result
.write
  sys_upd
;
end
во вложении текст если интересно
Вложения
Тип файла: zip reg.zip (9.0 Кбайт, 9 просмотров)

Последний раз редактировалось Pyro, 19.07.2011 в 15:24.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 23:34.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter