|
|
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
Приложение UniGUI , Delphi Rio. Есть фрейм, в котором есть сетка. От этого фрейма создаю и наследую другой фрейм. В другом фрейме я добавляю некий контейнер (TabControl - tcRef на картинке), внутрь которого перемещаю сетку. И теперь при сохранении проекта получаю ошибку, что такая сетка уже существует: A component named dbgData already exists. Если сетку переименовать, то получаю другую ошибку при сохранении проекта: Cannot rename component dbgData, component was introduced in an ancestor form. Я пока не знаю, это проблема Delphi или UniGUI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 17:48 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
Вот в таком случае проблемы нет. Но мне нужно, чтобы сетка лежала внутри TabControl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 17:49 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
X11, "Сетка" - ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 18:05 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
dbGrid в моем случае TUniDBGrid ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 18:10 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
X11 Я пока не знаю, это проблема Delphi или UniGUI В наследниках нельзя менять parent-а компонент (в дизайн-тайме). Проблема в том, что кто-то в принципе позволяет Вам это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 18:12 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
это ужас, кошмар и неприемлемо ну я выход нашел - первую сетку сделал невидимой и добавил вторую, её уже можно наследовать как хочу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 18:14 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
X11 это ужас, кошмар и неприемлемо Можно убиться об стену. Ну либо спроектировать иерархию наследования так, чтобы это не было проблемой. В целом, иерархию наследования следует строить так, чтобы потомки дополняли предка, а не переделывали его. Это, кстати, относится не только к визуальному наследованию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 18:18 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
X11 ужас, кошмар Строчку кода, да поменяй владельца на лету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 19:25 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
ъъъъъ X11 ужас, кошмар Строчку кода, да поменяй parent-а на лету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 19:25 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
Ага, т.е. во время исполнения уже менять можно... попробую, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 19:31 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Строчку кода, да поменяй владельца на лету. Лучше сделать базовый класс вообще не привязанным (и не нуждающимся) в гриде. А то потом появляется аналитик с запросом "а вот здесь чтобы был не грид, а дерево, причём только здесь и здесь, а в остальных местах как прежде", и внезапно оказывается, что работы утроилось, причём в основном переделывать. Я пришёл к паттерну "базовый фрейм с операциями" => "фрейм, специализированный для работы с гридом" => "конкретные реализации". И в примере автора TabControl с гридом появлялся бы на конкретной реализации, просто тем или иным образом привязывая свой грид как "тот, с которым и надо работать" (ну хотя бы тупо на уровне FindComponent). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 20:05 |
|
||
|
Наследование фрейма и вложенность компонентов
|
|||
|---|---|---|---|
|
#18+
softwarer Я пришёл к паттерну "базовый фрейм с операциями" => "фрейм, специализированный для работы с гридом" => "конкретные реализации" У меня примерно то же самое, например: TBaseActivatedFrame <- TBaseTreeFrame <- что-то конкретное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2020, 20:30 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=45&tid=2038350]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 421ms |

| 0 / 0 |
