-Поиск по дневнику

Поиск сообщений в t_rex

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 18.03.2007
Записей: 82
Комментариев: 2
Написано: 84


Странности с dropdown-окном в wxComboBox/wxChoice в Windows Mobile

Воскресенье, 16 Августа 2009 г. 21:22 + в цитатник
Оригинал сообщения
Комментарии: Комментарии

После долгого перерыва решил снова заняться разработкой для Windows Mobile - доработать программу-переводчик, использующую Google Translate. В программе используется wxChoice cо списком языков. Так как поддерживаемых языков довольно много, то общая высота списка wxChoice получается много больше чем высота экрана КПК. В результате получаем что-то подобное:


Ошибка в вычислении размера dropdown-окна в wxComboBox/wxChoice


После долгих поисков на форуме wxWidgets понял что с этой проблемой уже сталкивались неоднократно другие разработчики, но решения рабочего явно не было.


Перепробовав разные комбинации SetSize()/SetInitialSize()/SetMinSize()/SetMaxSize() нашел вот какое решение:


Если установить размер клиентской области для wxChoice после появления окна, то изменения применяются и получаем нормальный размер выпадающего списка. Если это делать при создании формы, то изменения не применяются.



bool wxGoogleTranslateClientApp::OnInit()
{
wxGoogleTranslateClientMainFrame* mainWindow = new wxGoogleTranslateClientMainFrame( NULL );
mainWindow->Show(true);
// Очень плохое решение, но только оно и работает
mainWindow->m_SourceLanguageChoice->SetClientSize(
mainWindow->m_SourceLanguageChoice->GetClientSize().GetWidth(), 120);
mainWindow->m_ResultLanguageChoice->SetClientSize(
mainWindow->m_ResultLanguageChoice->GetClientSize().GetWidth(), 120);
return true;
}

В результате получаем вот такой результат:

wxComboBox/wxChoice Dropdown Size Problem Fixed


Я сейчас нахожусь: In da office
Мой настрой: Ya Krevedko! Weeeee!
Я слушаю: Radio-T

LIci WP

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку