А как же попадание достаточно большого куска лишнего кода во все последующие программы Причем не зависимо от того, используется сплиттер или нет...
Этот топик читают: Гость
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Дак то же проба была...
Решаемо - как учил великий Кладов. Делаем св-во 14-го типа, и только включенный Splitter назначит в это св-во метод, который и вызывает NewSplitterEx ( а может и просто - назначит сразу NewSplitterEx) Вмешательство в share потребуется, чтобы определить эту константу по имени (скажем) SplitterON Да, вот Св-ва VisibleSp и EnableSp несколько бессысленны при отсутствии парных doVisibleSp и doEnableSp Можно и выкинуть их безо всякого напряжения .... |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
На этот раз соглашусь с доводами . Можно все это вносить в SVN.
|
|||
карма: 27 |
|
Ответов: 3655
Рейтинг: 69
|
|||
На этот раз соглашусь с доводами Ну наконец то.
Galkov А Edit с кнопкой можешь |
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Вячеслав, из этого топика видно, что все возникающие вопросы разбиваются на 3 группы:
1) Коды в win-элементах у нас выполнены по-разному - необходимо наведение единообразия 2) Spltter, будучи элементом, пытается встать, куда бог на душу положит - были предложения убрать его как бы насовсем 3) Редактор форм, таская по форме элементы с привязками - не меняет их Z-координат Так вот: Ну наконец то - относится только к п.2 Ну а теоретически - могу, конечно... И уж если совсем невмоготу - запихай кнопу в панель [size=-2]------ Добавлено в 20:37 Dilma, по поводу добавить: дело сейчас пятиминутное, но есть чисто технические вопросы: 1) коды, типа
2) не составляет труда onResize "перетащить" в win.pas Типа заодно, и как логическое следствие того, что именно работающий Splitter может сотворить onResize не только у MainForm, но и у любого win-элемента мнение на этот счет ? 3) В какие конкретно элементы добавлять св-ва Splitter-а ? 4) Ну и наконец, адекватно работать это будет только с: ComboBox, Edit, FontBox, GProgressBar, ListBox, Memo, PageControl, Panel, ProgressBar, RichEdit, ScrollBar, ScrollBox, Splitter, StringTable, ToolBar, TrackBar, TreeView, UpDown, VisualShape
и чего будем делать с остальными: BitBtn, Button, CheckBox, DataGrid, DriveBox, Flash, Grapher, GroupBox, Image, ImgBtn, Label, LED, MainForm, RadioButton, ScrollBarEx, TabControl, WebBrowser
Вроде бы иного варианта, кроме переноса (не тупого, конечно же) конструкторов контроллов в метод Init не просматривается. При этом можно бы работать постепенно, внося соответствующие св-ва в INI (или еще куда) по мере переработки. ??? Ну и видимо появляется правило для разработчиков компонентов: Всякий win-элемент должен быть наследником класса THIWin. При этом конструктор контролла должен вызываться в переопределенном методе Init, перед обязательным вызовом Init-метода предка
Возможно, для включения в раздел справки !Код_компонента! |
|||
карма: 9 |
| ||
файлы: 1 | SplitterCapture.rar [16.2KB] [318] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
1) Пока в таком же виде можно и в SVN добавлять.
2) Да можно и в win.pas перетащить. 3) Во все, где это логически может понадобиться. Очевидно, что BitBtn, Button, CheckBox и прочие это элементы где данная ф-ность нужна в очень редких случаях(для этого можно оставить элемент Splitter в виде отдельного компонента) 4) Да создание можно в init перенести [size=-2]------ Добавлено в 21:13 Этот раздел нужно основательно переписать для начала. |
|||
карма: 27 |
|
Ответов: 3655
Рейтинг: 69
|
|||
Galkov,
И уж если совсем невмоготу - запихай кнопу в панель
Можно конечно (нелюблю я кнопки нажимать[когда можно без этого обойтись] ,в одной руке мышь в другой сигарета (а чем кнопку нажать ). Если бы ещё эту панель можно было вставить в палитру компонентов(тонкий намёк Dilma ) Ну а теоретически - могу, конечно... Мне бы посмотреть как это делается ,я бы ещё, куда нибудь, приклеил, что нибудь. |
|||
карма: 0 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Galkov, Удачный revision 75. Половину моих проблем с b159_up2 решает. Ещё чуть-чуть и можно будет этим релизом пользоваться. На "сложной" схеме ошибка вылетает теперь только при закрытии программы.
|
|||
карма: 6 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Ты чего меня пугаешь
Не должно было ничего существенного внестись.... Только Splitter............ |
|||
карма: 9 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Но не на долго помогло: удалил несколько связей, компонентов, чуть подправил и опять при запуске ERROR.
[size=-2]------ Добавлено в 09:35 Вот теперь думаю какой компонент ещё удалить или добавить чтобы заработало:? [size=-2]------ Добавлено в 09:38 Поставил, одиноко стоящий, контрол "Message" - программа запустилась Dilma, говорит что у меня не последняя версия. Он конечно прав, но не сказал где взять последнюю. Уверен ты тоже не знаешь. |
|||
карма: 6 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Nic, сказать точно конечно не смогу
Но, логически рассуждая, из того, что ты говоришь можно заключить лишь, что: 1) либо логическая ошибка в CodeGen - не видно пока, какая 2) либо новая система обмена данными среды с CodeGen содержит баги со стороны среды Поймать такое, можно с пристрастием глядя в результаты работы CodeGen, наверное А для этого нужен пример обозримых размеров, обладающий магическим св-ом реагирования на пустой Message |
|||
карма: 9 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Galkov, Путём убивания компонентов из схемы, нашёл зависимость пропадания ошибки при закрытии программы от наличия в схеме компонента LED
Но обязательно стоящий на дочерней панеле:
[size=-2]------ Добавлено в 10:28 Впрочем, без наличия в схеме компонент LED получить ошибку при запуске тоже не удаётся:? |
|||
карма: 6 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Dilma писал(а): Очевидно, что BitBtn, Button, CheckBox и прочие это элементы где данная ф-ность нужна в очень редких случаях (для этого можно оставить элемент Splitter в виде отдельного компонента)Вот как раз Splitter, как отдельный компонент для второй группы перечисленных выше - как мертвому припарка Nic, твое у меня без проблем А вот такое вываливается жестко: code_355 Нельзя было бросать тему <Динамическая корректность> |
|||
карма: 9 |
| ||
файлы: 1 | code_355.txt [570B] [593] |
Ответов: 3655
Рейтинг: 69
|
|||
Nic, У меня твой пример Runtine error - при закрытии.
|
|||
карма: 0 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Nic, 158, 159, 159_2 эта схема закрывается с ошибкой, а вот в 157 - без ошибки!
|
|||
карма: 19 |
|