Конференция "Начинающим" » Создание компонент [D7, WinXP]
 
  • 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 - отсюда вычисляете координаты "центра" объекта.
    Рисуете полилинию по координатам центров всех объектов перед тем как рисовать их самих.
    Про "непрозрачный прямоугольник" тоже ничего не понял.
 
Конференция "Начинающим" » Создание компонент [D7, WinXP]
Есть новые Нет новых   [134427   +35][b:0][p:0.001]