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

Вниз

Упорядочение создания компонент   Найти похожие ветки 

 
saNat ©   (2005-10-19 12:44) [0]

Доброго времени суток (о:

Для своих целей создаю динамически TPanel с размещенными на ней TLabel:

TRecordPanel=Class(TPanel)
  Constructor  Create(AOwner:TComponent);              Override;
  Destructor   Destroy;                                Override;

 Private
  BeginDate            :TLabel;
  BeginTime            :TLabel;
  EndDate              :TLabel;
  EndTime              :TLabel;
  Intro                :TLabel;
  Place                :TLabel;
  Auto                 :TLabel;
  Driver               :TLabel;
  Boss                 :TLabel;

  FActiveColor         :TColor;
  FBeginDate           :String;
  FBeginTime           :String;
  FEndDate             :String;
  FEndTime             :String;
  FIntro               :String;
  FPlace               :String;
  FAuto                :String;
  FDriver              :String;
  FBoss                :String;

  Procedure   SetActiveColor(Param:TColor);
  Function    GetActiveColor:TColor;
  Procedure   SetBeginDate(Param:String);
  Function    GetBeginDate:String;
  Procedure   SetBeginTime(Param:String);
  Function    GetBeginTime:String;
  Procedure   SetEndDate(Param:String);
  Function    GetEndDate:String;
  Procedure   SetEndTime(Param:String);
  Function    GetEndTime:String;
  Procedure   SetIntro(Param:String);
  Function    GetIntro:String;
  Procedure   SetPlace(Param:String);
  Function    GetPlace:String;
  Procedure   SetAuto(Param:String);
  Function    GetAuto:String;
  Procedure   SetDriver(Param:String);
  Function    GetDriver:String;
  Procedure   SetBoss(Param:String);
  Function    GetBoss:String;

 Public

  Procedure ReFreshData;
  Procedure ReSizeData;

 Published
  Property PActiveColor:TColor
   Read  GetActiveColor
   Write SetActiveColor;
  Property PBeginDate  :String
   Read  GetBeginDate
   Write SetBeginDate;
  Property PBeginTime  :String
   Read  GetBeginTime
   Write SetBeginTime;
  Property PEndDate    :String
   Read  GetEndDate
   Write SetEndDate;
  Property PEndTime    :String
   Read  GetEndTime
   Write SetEndTime;
  Property PIntro      :String
   Read  GetIntro
   Write SetIntro;
  Property PPlace      :String
   Read  GetPlace
   Write SetPlace;
  Property PAuto       :String
   Read  GetAuto
   Write SetAuto;
  Property PDriver     :String
   Read  GetDriver
   Write SetDriver;
  Property PBoss       :String
   Read  GetBoss
   Write SetBoss;
End;


На форме расположен TScrollBox. В нем я создаю мои панели. Получается список. Сделано так:

TPRecordPanelList=^TRecordPanelList;

TRecordPanelList=Record
 Panel:TRecordPanel;
 Last:TPRecordPanelList;
 Next:TPRecordPanelList;
End;

По нажатию кнопки создаю экземпляр:

Item,ThisItem:TPRecordPanelList;
***
New(ThisItem);
ThisItem.Panel:=TRecordPanel.Create(Panel3);
ThisItem.Panel.Parent:=Panel3;
ThisItem.Panel.PBeginTime:=TimeToStr(Time);
ThisItem.Panel.ReFreshData;
If Item=Nil
 Then
  Begin
   ThisItem.Last:=Nil;
   ThisItem.Panel.PActiveColor:=clSkyBlue;
  End
 Else
  Begin
   ThisItem.Last:=Item;
   ThisItem.Panel.PActiveColor:=clSkyBlue;
   Item.Panel.PActiveColor:=clSilver;
  End;
Item:=ThisItem;
Item.Next:=Nil;
ThisItem:=Nil;
end;


Дело в том, что панели выводятся не друг за другом. Как исправить?

С уважением, ЕВА


 
clickmaker ©   (2005-10-19 12:51) [1]


> Дело в том, что панели выводятся не друг за другом. Как
> исправить?

про Left, Top в курсе?


 
saNat ©   (2005-10-19 12:56) [2]


> clickmaker ©   (19.10.05 12:51) [1]

Вообще да :о)
Она (панель) создается как "alTop"

Constructor TRecordPanel.Create(AOwner:TComponent);
Begin
Inherited;
***
Align:=alTop;
BevelInner:=bvLowered;
BevelOuter:=bvRaised;
Color:=FActiveColor;
***
End;


 
saNat ©   (2005-10-19 12:57) [3]

Я считал что они будут создаваться друг за другом сверху вниз. Ан нет.

С уважением, ЕВА


 
saNat ©   (2005-10-19 13:04) [4]

Выложить весь текст модуля?


 
saNat ©   (2005-10-19 13:34) [5]

Гм... Посмотрел в режиме разработки... Кроме различий в свойстве Top не нашел. Неужели кроме как проверять это свойство нет способов? Не очень красиво...

С уважением, ЕВА


 
Seg   (2005-10-19 13:52) [6]

Та панель, которая в центре, должна создаваться последней.


 
saNat ©   (2005-10-19 13:55) [7]

Не понял... Честно.

С уважением, ЕВА


 
evvcom ©   (2005-10-19 13:56) [8]


> Выложить весь текст модуля?

Боже упаси!


 
saNat ©   (2005-10-19 14:09) [9]

Сделал. Ручками прокручиваю ScrollBar в позицию 0. Видимо единственное решение.

Всем спасибо за внимание.

С уважением, ЕВА



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

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

Наверх





Память: 0.48 MB
Время: 0.047 c
6-1122384608
Almaz
2005-07-26 17:30
2005.11.06
Синхронизация доступа к сокету


1-1128935230
leonidus
2005-10-10 13:07
2005.11.06
Почему не удается восстановить буфер обмена ?


2-1128313620
Domix
2005-10-03 08:27
2005.11.06
Консоль + Графика


1-1129545468
DeStranger
2005-10-17 14:37
2005.11.06
Модальное окно теряет фокус


2-1129132504
Scarlet
2005-10-12 19:55
2005.11.06
как забрать данные?





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