Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Родитель и визуальное наследование форм / 10 сообщений из 10, страница 1 из 1
15.02.2011, 19:10
    #37118025
Родитель и визуальное наследование форм
Добрый день. Господа просветите дурня.
Допустим есть базовая форма, на ней лежит кнопка, наследуемся от базовой формы и на наследника кидаем панель.
Вопрос вот в чем: возможно ли в дизайн-тайме в наследнике переместить кнопку на панель? Правка dfm не помогла как и собственно само перемещение кнопки в дереве объектов IDE
Вот как пробовал править dfm
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 inherited  Form2: TForm2
  Caption = 'Form2'
   object  Panel1: TPanel
    Left =  56 
    Top =  32 
    Width =  185 
    Height =  41 
    Caption = 'Panel1'
    TabOrder =  1 
     inherited  Button1: TButton
      Left =  166 
      Top =  96 
     end 
   end 
 end 
...
Рейтинг: 0 / 0
15.02.2011, 19:19
    #37118037
Michael Longneck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
Это проблема, да. Не получится. Решал так - писал родителя безо всякого дизайна вообще, но с почти всей логикой. Наследовал от него несколько вариантов - кнопка на панели, кнопка на форме. А от них уже наследовал результатирующие формы. Другого хорошего метода для design-time не нашёл. Логику писал в таком стиле

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
TAncestorForm =  class (TForm)
protrected
  FGrid:TGid;
 public 
   procedure   Do ;

 end ;

 procedure  TAncestorForm. Do ;
 begin 
  FGrid.DoSomething;
 end ;
 


TDescendantForm =  class (TAncestorForm)
....

 constructor  Create( AOwner:TComponent);
 begin 
   inherited ;
  FGrid := Grid1;
 end ;
...
Рейтинг: 0 / 0
15.02.2011, 20:31
    #37118170
Родитель и визуальное наследование форм
Обидно, вроде бы довольно простая вещь, а увы...
...
Рейтинг: 0 / 0
16.02.2011, 00:10
    #37118466
rilio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
На самом деле, не так уж сложно это делать и в рантайме. Обычно перемещаются панели, группбоксы и прочие "большие" объекты, которым надо только Parent поменять.
А для кнопки и панели я бы сделал так: добавил бы эту панель на _базовую_ форму и замаскировал (невидимые границы и цвет фона). А в наследнике - рисовал уже как надо.
Хотя, конечно, надо смотреть конкретный интерфейс.
...
Рейтинг: 0 / 0
16.02.2011, 07:08
    #37118611
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
Анонимус2011Вопрос вот в чем: возможно ли в дизайн-тайме в наследнике переместить кнопку на панель?
Стандартными средствами - нет. В принципе, можно набросать компонент, который будет это делать, но имхо разумнее думать над дизайном. В частности, на родителе должен лежать action, а не кнопка.

rilioНа самом деле, не так уж сложно это делать и в рантайме.
Не сложно. Только плохо и неудобно.
...
Рейтинг: 0 / 0
16.02.2011, 07:53
    #37118642
Дураг
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
softwarerВ частности, на родителе должен лежать action, а не кнопка.

вот именно. делаете новую кнопку с action, родительскую скрываете. никаких проблем.
...
Рейтинг: 0 / 0
16.02.2011, 15:45
    #37120207
NikolaB
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
А в чем проблема менят parent?
...
Рейтинг: 0 / 0
16.02.2011, 16:18
    #37120322
rilio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
NikolaBА в чем проблема менят parent?
Проблема в том, что в дизайн-тайме внешний вид формы получается не такой, как в рантайме. И надо держать в голове, что где-то есть кусок кода, который что-то меняет в интерфейсе. Теряется одно из преимуществ визуальной разработки.
Но такое бывает в больших проектах со сложной иерархией форм. Не от хорошей жизни.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
11.10.2020, 12:09
    #40007413
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
почти за 10 лет так ничего и не улучшили в этом плане разработчики Delphi
...
Рейтинг: 0 / 0
11.10.2020, 14:11
    #40007430
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Родитель и визуальное наследование форм
X11
почти за 10 лет так ничего и не улучшили в этом плане разработчики Delphi

Так вот он какой, человек с лопатой
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Родитель и визуальное наследование форм / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]