Ошибка соединения. delphimaster.php on line 504
Ошибка соединения. delphimaster.php on line 737
-
Gold Dragon (31.03.17 17:08) [0]Здравствуйте.
Пишу программу редактора языка релейно-кодовых символов.
Каждый элемент языка (скажем - опросить контакт --| |--) есть объект построенный от TCustomControl для того чтобы можно было применить серилизацию. Объекты рисуются на TPanel и представляют собой белый непрозрачный прямоугольник с изображением скажем --||--. Но вот возникла необходимость
мною созданные объекты соединить ломаной линией. Под ломаной
линией получается непрозрачный прямоугольник, который может закрывать другие объекты. Как посоветуете с этой ситуации выйти? -
Pavia © (31.03.17 21:18) [1]Нанять программиста.
-
An a Student (31.03.17 21:38) [2]> Объекты рисуются на TPanel
"Нафига, Гриш?" (с)
> есть объект построенный от TCustomControl для того чтобы можно было применить серилизацию.
Чтоб что применить? А наследоваться лучше было от TGraphicControl.
> Под ломаной линией получается непрозрачный прямоугольник, который может закрывать другие объекты.
эм... Как-то смутно, скриншот есть? И показывайте как делаете. -
Gold Dragon (03.04.17 13:34) [3]
> Чтоб что применить?
Сериализацию объектов. Это такое действие, которое позволяет сохранить динамически (и статически) созданные объекты на диск в виде текстового или двоичного файла. Затем можна их считать в свою программу. В Делфи Вы разрабатываете приложение, затем сохраняете (это и есть серилизация). ну и когда Вы загружаете проект это есть десерилизация. По поводу TGraphicControl
спасибо попробую. -
Gold Dragon (03.04.17 13:37) [4]Для Pavia тоже спасибо, как правило такие сами ничего не могут, ну и какой можно дать совет, разве только повыпендриваться.
Только кто не работает, тот все знает. -
D7 (04.04.17 20:38) [5]TFileStream.WriteComponent() чтоле? Просто создать свои Save/Load не удобнее? Или вообще хранить/грузить как JSON/XML.
У вас там должно быть Left/Top и Width/Height - отсюда вычисляете координаты "центра" объекта.
Рисуете полилинию по координатам центров всех объектов перед тем как рисовать их самих.
Про "непрозрачный прямоугольник" тоже ничего не понял.