Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.02.17;
Скачать: [xml.tar.bz2];

Вниз

Свойство компонента   Найти похожие ветки 

 
Bujhm   (2008-01-25 12:24) [0]

Здравствуйте, возможно ли компоненту установить свойство которое доступно только в Object Inspector ?


 
Palladin ©   (2008-01-25 12:28) [1]

а при чем тут создание компонентов?


 
Bujhm   (2008-01-25 12:38) [2]


> Palladin ©   (25.01.08 12:28) [1]


Если компоненту создать какое то свойство, например


private
   { Private declarations }
   FFont: TFont;

published
   { Published declarations }
   property Font: TFont read FFont write SetFont;


то как зделать что бы это свойство видно было только в Object Inspector, но не в TCodeCompleteListView


 
Palladin ©   (2008-01-25 12:51) [3]

да, в общем"то, никак. где ты вообще такое видел?


 
Bujhm   (2008-01-25 13:26) [4]


> Palladin ©   (25.01.08 12:51) [3]


Да в общем то ни где, процедура вот к примеру

procedure TComponent.CreateParams(var Params: TCreateParams);
begin
 inherited;
 Params.Style := Params.Style - WS_BORDER;
 Params.WindowClass.Style := Params.WindowClass.Style - CS_DROPSHADOW;
end;


которую я так понял можно использовать только при создании компонента, в Design получаеться а в остольном никак


 
Palladin ©   (2008-01-25 13:37) [5]

ничего не понял... причем тут эта процедура? и она в protected секции вообще-то, а не в published это раз, два: она не у TComponent, а у TWinControl... хотя может ты свой компонент TComponent"ом обозвал...


 
Bujhm   (2008-01-25 13:51) [6]


> Palladin ©   (25.01.08 13:37) [5]


...Да обозвал TComponent

Ну вобщем я засел за Создание компонентов в среде Delphi. Руководство разработчика и за Рея, короче пока не изучу с глыпыми вопросами пристовать не буду.

Спасибо Palladin


 
DimaBr ©   (2008-01-25 14:21) [7]


> Palladin ©   (25.01.08 12:51) [3]
>
> да, в общем"то, никак.

Странно слышать от мастера такое.


 
Palladin ©   (2008-01-25 14:22) [8]


>  [7] DimaBr ©   (25.01.08 14:21)

какое? свойство объявить что бы в коде комлетион его не было а в инспекторе было?


 
DimaBr ©   (2008-01-25 14:30) [9]

Да, я например легко напишу редактор свойства, в котором его переименную. В итоге в инспекторе свойство есть а в коде нет !


 
Palladin ©   (2008-01-25 14:34) [10]

И я не смогу присвоить этому свойству значение по его имени?


 
DimaBr ©   (2008-01-25 14:37) [11]

Конечно, ведь такого на самом деле не будет.
Беру свойство Tag

TTagPropertyEditor = class(TPropertyEditor)
 function GetName: string;override;
end;

function TTagPropertyEditor.GetName: string;
begin
 Result := "MySuperTag"
end;

RegisterPropertyEditor()


В инспекторе видим что ? А как до него достучаться ?


 
Palladin ©   (2008-01-25 14:40) [12]

А к MySuperTag я достучусь?


 
DimaBr ©   (2008-01-25 14:41) [13]

Как ?


 
Palladin ©   (2008-01-25 14:42) [14]

obj.MySuperTag:=4;


 
Palladin ©   (2008-01-25 14:44) [15]

хотя в общем то ступил ...
ну а хоть через SetPropValue смогу ? :)


 
DimaBr ©   (2008-01-25 14:44) [16]

Не компилится ! Может я что-то не понимаю ?


 
DimaBr ©   (2008-01-25 14:45) [17]

Думаю через SetPropValue тоже не выйдет, это свойство только для инспектора


 
Palladin ©   (2008-01-25 14:50) [18]

ладно... пофиг на IDE... буду компилировать компилятором... и никакое свойство ты не спрячешь от меня :)


 
DimaBr ©   (2008-01-25 14:52) [19]

Так такого свойства нет, оно только отображается в инспекторе.


 
Palladin ©   (2008-01-25 14:55) [20]

судя по [2] оно все же есть...


 
DimaBr ©   (2008-01-25 15:03) [21]

Можно например переименовать, понизить тип до TObject и спрятать в protected. Будет доступно в наследнике, но попробуй найди :)))


 
Palladin ©   (2008-01-25 15:07) [22]

ну да... хотя кому надо найдут...


 
DimaBr ©   (2008-01-25 15:10) [23]

А почему в "компонентах" эта ветка не обозначена как закрытая ?


 
Palladin ©   (2008-01-25 15:11) [24]

я так понял ее кто то перенес сюда...


 
DimaBr ©   (2008-01-25 15:27) [25]

Так а почему не закрытая ??? Перенесенные помечаются как закрытые.


 
Palladin ©   (2008-01-25 15:29) [26]

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


 
Kolan ©   (2008-01-25 15:33) [27]

Удалено модератором
Примечание: Правила читаем и уважаем


 
DimaBr ©   (2008-01-25 15:44) [28]

Не видишь, люди общаются.


 
Игорь Шевченко ©   (2008-01-25 16:28) [29]


> А почему в "компонентах" эта ветка не обозначена как закрытая
> ?


Обозначена. Это движок сайта иногда неверно показывает



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.02.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.041 c
15-1200159007
anton773
2008-01-12 20:30
2008.02.17
listbox.items.add в .NET


2-1201086730
Guriev
2008-01-23 14:12
2008.02.17
Как расчитать количество рабочих дней между двумя датами?


15-1200289306
вовчик
2008-01-14 08:41
2008.02.17
Вопрос по администрированию доступа к папке


2-1201267734
abhtr
2008-01-25 16:28
2008.02.17
Как удалить файл "Только чтение"


6-1180443920
Chaser
2007-05-29 17:05
2008.02.17
Путь к папке "Program Files" на удаленном компьютере





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский