| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [wx] Параметры окна (фрейма) |
| Автор: SolRus 30.8.2011, 02:21 | ||
| подскажите, как в wxWidgets: 1) заставить создаваться главное окно(фрейм) не посередине экрана? создается так: WindowMain * frame = new WindowMain(NULL, -1, _("Первое окно"), wxPoint(150,50),wxSize(400,300)); пересмотрел вроде как полностью весь класс и не понял :( вот к примеру (кстати накой их две делать было?)
я понимаю что можно после создания можно поставить через SetPosition. но как во время создания? 2) пересмотрел все что есть и не нашел метода который бы возвращал (и устанавливал) все переменные (в объекте) данные окна, т.е. на шрифты курсоры положение , размер на экране, свернуто развернуто и т.п. Можно сказать на все приватные данные.... или такого не бывает? простое присвоение кидает ошибку. |
| Автор: Amp 30.8.2011, 19:39 |
| А твой MainWindow передает параметры position и size в конструктор базового класса (wxFrame)? И к сведению - то, что ты указываешь окну позицию и размер, носит рекомендательный характер. В какое место и с какими размерами поместить окно решает менеджер окон операционной системы, которую ты используешь. Шрифты там стандартные, получаешь через wxSystemSettings, позицию курсора через wxGetMousePosition, для прочего IsIconized/IsMaximized/IsFullScreen и т.п. |
| Автор: SolRus 30.8.2011, 20:06 | ||
| Amp, 1. конструктор
2. а нету такого метода чтоб сразу все это получить? (позиция курсора не обязательно, а вот остальное связанное с настройкой окна нужно - внешний вид, но без хендлов и т.п.). я понимаю что можно все методы переискать и присвоить, хотелось бы один метод, как бы сериализация объекта. |
| Автор: Amp 30.8.2011, 20:25 | ||
SolRus, декларация конструктора для меня бесполезна
т.е., что pos и size передаются в конструктор базового класса. Про менеджер окон я сказал просто к сведению. Нет, все сразу не получишь. На моей памяти единственный контрол в wxWidgets, который позволял сериализовать/десериализовать настройки своего вида в строку - это wxAuiManager (методами Load/SavePerspective). |
| Автор: SolRus 30.8.2011, 20:38 | ||
| Amp, да инициализация фрейма такая как ты и написал. оно почему то центрирует его использую версию 2.9.1 может ошибка из-за того что не релизная?
это печально :( и прискорбно) |
| Автор: SolRus 30.8.2011, 21:38 | ||
| блин ой я дурень. вощем создавал через wxFormBuilder и незаметил что я наклацал для главного окна this->Centre( wxBOTH ); а когда писал мин код руками получилось все правильно
Вообщем учитывая что сразу получить нельзя все свойства окна, то тема ичерпана. ps: тебе спасибо |