Я разрабатывал кросс-платформенную программу с GTK и Glade, поскольку я был использован только для приложений Windows. Этот вопрос включает в себя виджеты (я считаю, что это то, что они называются) и как их можно «добавить» в главное окно. Это лучше объясняется изображениями.GTK + 3 и Glade: Добавить виджеты на боковой панели во время выполнения (C#)
У меня есть MainWindow, который вот так:
Вы можете увидеть правая сторона намеренно оставлена пустой. Это происходит потому, что она будет иметь динамическое содержимое, как игрока информацию, в виде миникарта, инвентарь и т.д. Вот один из виджетов, которые я хочу, чтобы быть включенными в правой стороне:
Это в основном имеет только основную информацию который будет добавлен. Не обращая внимания на все основное окно и просто сосредоточиться на правой части, в кодировании я хочу, чтобы показать что-то вроде этого:
вопрос, я не совсем понимаю, если это на самом деле, как вы можете сделайте это, или я должен на самом деле закодировать правую панель непосредственно в клиенте вместо этого. Или закодировать его динамически с нуля * IE Крите метки/etc во время выполнения, а не это окно PlayerInfo.
Мне любопытно, какие функции могут это сделать, и если кто-то может указать мне в правильном направлении, чтобы понять это. Возможно, я ошибаюсь в том, как это должно работать.
Я предполагаю, что вам нужно добавить виджет с кодировкой C# при создании.
Также я пробовал что-то вроде Виджет newWidget = новый виджет (builder.GetObject («PlayerInfo»). Handle); Box test = builder.GetObject ("boxDropDown"); test.Add (newWidget); Где boxDropDown - это правый бокс, куда будут выходить все выпадающие окна, I.E. статистика игрока. Я могу проверить.show(), чтобы показать его, но вместо этого он находится в собственном окне. Я предполагаю, что здесь что-то не хватает. – Valleriani