![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Если нет Caption, то, как правило, есть Text.
GetText вернёт или то, или то. Хотя по сути это одно и то же. |
|||
|
||||
| MetalFan |
|
||||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
можно и мне намек дать?
любое published св-во устанавливается с пол-пинка:
Это сообщение отредактировал(а) MetalFan - 1.2.2011, 18:45 -------------------- There are always someone smarter than you... |
||||
|
|||||
| Keeper89 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 20 Всего: 58 |
В 2007 через RTTI нельзя проверить есть Caption или нет?
|
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Keeper89, почему нельзя? GetPropInfo - не?
-------------------- There are always someone smarter than you... |
|||
|
||||
| CodeMonkey |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 38 Всего: 89 |
В сторону TJvFormStorage совершенно правильно ткнули. А работает это через RTTI. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Да ну. Где?
unit Controls;
или я не там смотрю? Добавлено через 1 минуту и 59 секунд Ну так Caption и Text - это как бы разные вещи. Caption редактировать нельзя, а Text зачастую можно. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
А по сути это одно и то же. Если ты попробуешь получить Caption у TEdit, то получишь Text. Если попробуешьполучить Text у TLabel - получишь Caption. Их разделение чисто логическое. А по сути - это текст контрола. Если брать WinAPI - там они не различаются. |
|||
|
||||
| cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 7 Всего: 15 |
На мой взгляд, этот вариант оправдан лишь в одном случае: если нет возможности создать потомка, но при этом необходимо добраться к свойству. Во всех остальных это есть ИЗВРАТ. При чём гарантий, что такой код будет "глотаться" новыми версиями компилятора, нам никто не даёт! 2 AkellaКак раз для твоей задачи, идеально подходит модуль TypInfo, в котором реализованна возможность работы с RTTI(Интроспекция).Ты можешь с его помощью проверять, есть ли у объекта определённое сойство, и если такое есть, то получать/инициализировать значение эт. свойства. Соответственно, модуль работает только с published свойствами. |
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Пустая строка в Text для Edit - нормальное явление. Ждем от пользователя ввода данных. Пустая строка в Caption для Label - а нафига тогда вообще этот Label? Так что это совсем не одно и то же.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Да, как проверить наличе свойства не проблема. Проблема в том, что вместо простого доступа к свойству Caption, как например к Visible TWinControl(Controls[i]).visible придётся городить огород с проверкой на тип конкретного компонента if ... is TcxCheckBox then if ... is TLabel then if ... is TещёКакойТоТамКомпонент then Добавлено через 4 минуты и 3 секунды Легко Добавлено через 4 минуты и 35 секунд Я не хочу использовать джедаев Добавлено через 7 минут и 3 секунды
Та это понятно, а не понятно как это реализовать 1-3 строками кода. Чтобы можно было сохранить значение Caption, а потом восстановить. В цикле. |
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
-------------------- There are always someone smarter than you... |
|||
|
||||
| CodeMonkey |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 38 Всего: 89 |
Т.е. ты полагаешь, что реализованы они божьим духом и в твоём коде невоспроизводимы в принципе? -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Да мне всё равно, кем они реализованы. Я просто не хочу использовать эту библиотеку и всё. Я наоборот стараюсь удалить из всех проектов использование этой библиотеки.
|
|||
|
||||
| northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Давно говорил и говорю. Библиотека RxLib нужна не столько для того чтобы ее явно использовать, сколько для того чтобы в ее исходниках смотреть как умные люди сделали что-то. То же касается и ее потомка JEDI. -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
А почему просто не сделать SaveComponent и LoadComponent?
А в код джедаев за этим лазить безполезно, ибо там корябают все кому не лень. И многие из них далеко не умные... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |