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

Вниз

Не запоминается Property.   Найти похожие ветки 

 
TransparentGhost   (2004-03-29 11:47) [0]


Type
 TADSheetStyle=(ShDbGrid, ShSheet);

 TADSheet = class(TScrollBox)
 private
    FSheetStyle:TADSheetStyle;
    FDefRowHeight:Word;
    FDefColWidth:Word;
    FImage:TImage;
    FCells:TADCellsArr;
    FRowHeights:TADRowHeights;
    FColWidths:TADColWidths;
    FSelection:TADSelectionList;
 protected
    ....
 public
    Constructor Create(AOwner: TComponent); override;
    Destructor Destroy; override;
    Procedure Paint;
 published
    Property SheetStyle:TADSheetStyle Read FSheetStyle Write FSheetStyle Default ShSheet;
 end;


Кидаю на форму компонент - SheetStyle=ShDbGrid,
меняю на ShSheet - при переоткрытии проекта опять SheetStyle=ShDbGrid.
Как с этим бороться?


 
Reindeer Moss Eater ©   (2004-03-29 11:49) [1]

Если проперти объявлена с default то дефолт значение надо присваивать в конструкторе. Иначе зачем deafult?


 
Семен Сорокин ©   (2004-03-29 11:50) [2]

TransparentGhost   (29.03.04 11:47)  
Покажи весь код


 
Ricks ©   (2004-03-29 11:50) [3]

Может быть это связано с defaul?


 
Reindeer Moss Eater ©   (2004-03-29 11:52) [4]

Покажи весь код
Он и так понятен исходя из
Кидаю на форму компонент - SheetStyle=ShDbGrid,
меняю на ShSheet - при переоткрытии проекта опять SheetStyle=ShDbGrid


 
Семен Сорокин ©   (2004-03-29 11:56) [5]

именно констркутор интересует


 
TransparentGhost   (2004-03-29 12:05) [6]

Constructor TADSheet.Create(AOwner: TComponent);
Var
  Ii:Word;
Begin
 Inherited Create(AOwner);
 Width:=250;
 Height:=150;
 FDefRowHeight:=22;
 FDefColWidth:=60;
 VertScrollBar.Tracking:=True;
 HorzScrollBar.Tracking:=True;

 If GetClass("TImage")=Nil then
    RegisterClass(TImage);

 FImage:=TImage.Create(Self);
 FImage.Parent:=Self;
 FImage.Top:=0;
 FImage.Left:=0;
 FImage.Width:=800;
 FImage.Height:=600;
End;

У меня есть и другой компонент, там около десятка подобных Property, ни одному из них не задаю значения в конструкторе, всё через Default. Всё работает нормально (и изначально правильно выставляет и запоминает изменения), и только с двумя подобная лажа.


 
mrcat ©   (2004-03-29 12:08) [7]

само наличие Default в коде не подразумевает "использовать по умолчанию" ...

сonstructor TADSheet.Create(AOwner: TComponent);
...
begin
...
 FSheetStyle := что_то_там;
end;


 
TransparentGhost   (2004-03-29 12:10) [8]

Хмм... добавил в Create - всё нормально... но тогда вааще зачем нужен этот Default?


 
Reindeer Moss Eater ©   (2004-03-29 12:12) [9]

Что бы DFM не разбухал без надобности


 
TransparentGhost   (2004-03-29 12:19) [10]

Если установленное значение = Default, тогда в ДФМ не пишет?

Но почему без задания значения в Create - не всегда сохраняются заданные значения? Это мои глюки или Делфи или ещё чьи?


 
Reindeer Moss Eater ©   (2004-03-29 12:23) [11]

Значения свойства равные Default значению не записываются в DFM.
Вот и все.



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

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

Наверх





Память: 0.47 MB
Время: 0.038 c
6-1074854456
juiceman
2004-01-23 13:40
2004.04.18
what about Indy ?


14-1079876188
Undert
2004-03-21 16:36
2004.04.18
А куда делось


1-1080712200
Blunder
2004-03-31 09:50
2004.04.18
как компонент в процедуру передать????


3-1079941197
VIB
2004-03-22 10:39
2004.04.18
DBGRID


6-1076423644
launch
2004-02-10 17:34
2004.04.18
Поймать окончание загрузки страницы в TWebBrowser





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский