2016-01-16 6 views
1

Я работаю над написанием графического интерфейса в Haskell (и Ur/Web, но это уже другая история) и имеет несколько ветвей разработки, использующих разные библиотеки и подходы, которые я работаю одновременно , При попытке перенести некоторый код, который у меня был из библиотек пользовательского интерфейса, поддерживаемых браузером, с элементами HTML (точнее, с тремя penny-gui), с использованием собственных GUI-апплетов с использованием графического бэкэнда WX (wxHaskell, реактивного банана), я столкнулся с некоторыми проблемами, как перенести некоторый код, который у меня был на основе построения элемента <table>, в эквивалентную конструкцию wxWidgets. Мне показалось, что не было простого способа реализовать такую ​​вещь самостоятельно, и никакого родного эквивалента. Я ищу предложения по внедрению, указатели на существующие реализации, подходящие альтернативы и т. Д. Я могу предоставить более подробную информацию о дизайне, который я ищу, если это потребуется.-подобный элемент пользовательского интерфейса для wxHaskell/wxWidgets

Таблица html используется только для выравнивания и отображения данных, где одна ячейка в каждой строке является реактивным элементом управления, а количество строк, отображаемых в любой момент времени, также может варьироваться в зависимости от ситуации.

ответ

2

HTML-таблица может содержать только что-либо в своих ячейках, поэтому она слишком богата, чтобы быть представлена ​​любым встроенным элементом управления. Это действительно трудно сделать рекомендацию, не зная, что именно вы имеете в таблице, но различные возможности:

  • wxHtmlWindow: это может быть использовано повторно использовать HTML при условии, что это достаточно простой (HTML4 в основном), и вы можете внедряйте в него встроенные элементы управления, если это необходимо.
  • wxGrid: это самый гибкий виджет, но он не является родным.
  • wxDataViewCtrl: это собственный контроль под GTK и OS X (но не MSW, где вам нужно использовать wxListCtrl для 100% -ного подхода), но он довольно ограничен по сравнению с любым из вышеперечисленных решений.
+0

В моем здании библиотеки виджета я стараюсь держать все как можно более общим, но конкретное приложение, которое я имею в виду, будет содержать только текст и маленькие значки, в дополнение к реактивному виджету, о котором я упоминал. Этот виджет, в свою очередь, представляет собой повышенную кнопку, в которой моментальные снимки изменяются во времени при клике. – archaephyrryx

+0

Это выглядит с помощью wxDVC, но вам нужно написать собственный визуализатор для виджета. –

+0

Я привык писать собственные рендеринги для своих виджетов. Есть ли у вас примеры/руководства, которые могут помочь мне реализовать таблицу DVC? У меня нет большого знакомства с библиотекой. – archaephyrryx

 Смежные вопросы

  • Нет связанных вопросов^_^