Причины, почему селекторы на основе id не работают
Решения
$(document).ready();
.bind()
для jQuery. В старых версиях jQuery для этого было .live()
. Этот вопрос очень похож на один, я собирался отправить, только мой - для Sony программирование PSP.
Я играл с чем-то некоторое время, я консультировался с некоторыми книгами и VTMs, и до сих пор это - общее представление о простые ui системы.
class uiElement()
{
...
virtual void Update() = 0;
virtual void Draw() = 0;
...
}
class uiButton() public : uiElement
{
...
virtual void Update();
virtual void Draw();
...
}
class uiTextbox() public : uiElement
{
...
virtual void Update();
virtual void Draw();
...
}
... // Other ui Elements
class uiWindow()
{
...
void Update();
void Draw();
void AddElement(uiElement *Element);
void RemoveElement(uiElement *Element);
std::list <uiElement*> Elements;
...
}
void uiWindow::Update()
{
...
for (list <uiElement*>::iterator it = Elements.begin(); it != Elements.end(); it++ )
it->Update();
...
}
void uiWindow::Draw()
{
...
for (list <uiElement*>::iterator it = Elements.begin(); it != Elements.end(); it++ )
it->Draw();
...
}
princple должен создать окно и attact ui Элементы к нему, и назвать ничью и методы обновления от соответствующих основных функций.
У меня нет ничего еще работающего, как у меня есть проблемы с кодом для прорисовки. С различными API на ПК и PSP, я смотрю на некоторый код обертки для OpenGL и psp gu.
Надеюсь, это поможет.
thing2k
Одна полезная стратегия иметь в виду могла бы быть составным шаблоном. На низком уровне это могло бы позволить Вам рассматривать все объекты GUI (и наборы объектов) более легко когда-то созданный. Но я понятия не имею, что вовлечено в дизайн платформы GUI, таким образом, одно место для нахождения общего вдохновения находится в исходном коде существующего проекта. WxWidgets является межплатформенной платформой GUI с доступным источником. Удача с Вашим проектом!
Для любого, кому интересно, вот мой открытый исходный код, BSD-лицензированный инструментарий GUI для DS:
http://www.sourceforge.net/projects/woopsi
ответ thing2k довольно хорош, но я серьезно рекомендовал бы иметь код для содержания дочерних элементов UI в основе uiElement класс. Это - шаблон, за которым я следовал в Woopsi.
Если Вы не будете поддерживать это в базовом классе, то Вы столкнетесь с основными проблемами, когда Вы попытаетесь реализовать что-либо более сложное, чем текстовое поле и кнопка. Например:
Кроме того, стоит помнить, что DS имеет ЦП на 66 МГц и 4 МБ RAM, которая используется и чтобы сохранить Вашу программу и выполнить ее (DS ROMs загружаются в RAM, прежде чем они будут выполнены). Необходимо действительно рассматривать его как встроенную систему, что означает, что STL отсутствует. Я удалил STL из Woopsi и сумел сохранить 0.5 МБ. Не много по настольным стандартам, но это является 1/8-м из общей доступной памяти D, использованной спамом STL.
Я детализировал весь процесс записи UI на моем блоге:
http://ant.simianzombie.com/blog
Это включает описания этих двух алгоритмов, которые я придумал для перерисовки экрана, который является самой хитрой частью создания GUI (каждый просто разделяет прямоугольники и помнит видимые регионы; другие деревья BSP использования, который намного более эффективен и легче понять), подсказки для оптимизации, и т.д.
Я думаю, смотря на способ, которым другие инструментарии GUI сделали это, было бы превосходное место для запуска. Для примеров C++ я слышу много хороших вещей о QT. Я не использовал его лично все же. И конечно WxWidgets как Nick упомянул.
Я записал очень простой GUI точно так же, как Вы делаете предложение. У меня есть он работающий на Windows, Linux и Macintosh. Это должно портировать относительно легко на любую систему как PSP или DS также.
Это - открытый исходный код, LGPL и здесь: