Как отловить событие переключен Topic is solved

Это русская секция форума wxWidjets. В этой секции вы можете обсуждать любые вопросы, связанные с wxWidgets на вашем родном языке.
Post Reply
VantuZZ
In need of some credit
In need of some credit
Posts: 6
Joined: Fri May 07, 2010 9:33 am
Location: russia
Contact:

Как отловить событие переключен

Post by VantuZZ » Wed Jun 02, 2010 11:04 pm

Привет всем. Собственно, никак не получается отловить событие переключения вкладки в wxAuiNotebook, мб кто уже сталкивайся с этим вопросом ?
wxWidgets 2.9.1, Visual Studio 2008, win XP

borr_1
Super wx Problem Solver
Super wx Problem Solver
Posts: 362
Joined: Wed Mar 07, 2007 8:10 am
Location: Russia, Shakhty

Post by borr_1 » Thu Jun 03, 2010 9:57 am

EVT_NOTEBOOK_PAGE_CHANGED
EVT_NOTEBOOK_PAGE_CHANGING

как назначаешь event через table или через Connect, если через Connect - NULL, this в конец вставить не забыл?
WinXP SP3, wx-2.8.10, MinGW-4.4.1, gdb-7.1.2, eclipse

VantuZZ
In need of some credit
In need of some credit
Posts: 6
Joined: Fri May 07, 2010 9:33 am
Location: russia
Contact:

Post by VantuZZ » Thu Jun 03, 2010 2:11 pm

И так и так пробовал, например пишу в основном фрейме в функции create:

Code: Select all

m_Notebook = new wxAuiNotebook(this, GUI_NOTEBOOK);
и в таблице

Code: Select all

EVT_NOTEBOOK_PAGE_CHANGED(GUI_NOTEBOOK, MFrame::OnChangeTab)
EVT_NOTEBOOK_PAGE_CHANGING(GUI_NOTEBOOK, MFrame::OnChangeTab)
никакого эффекта от переключения вкладок :(
wxWidgets 2.9.1, Visual Studio 2008, win XP

tan
Moderator
Moderator
Posts: 1471
Joined: Tue Nov 14, 2006 7:58 am
Location: Saint-Petersburg, Russia

Post by tan » Thu Jun 03, 2010 5:02 pm

А
EVT_AUINOTEBOOK_PAGE_CHANGED
EVT_AUINOTEBOOK_PAGE_CHANGING
не пробовал?
OS: Windows XP Pro
Compiler: MSVC++ 7.1
wxWidgets: 2.8.10

borr_1
Super wx Problem Solver
Super wx Problem Solver
Posts: 362
Joined: Wed Mar 07, 2007 8:10 am
Location: Russia, Shakhty

Post by borr_1 » Fri Jun 04, 2010 6:35 am

Покажи MFrame::OnChangeTab, внутрь ее отладчик не попадает?
Попробуй взять Code::Blocks или wxFormBuilder там есть AuiNotebook в генераторе форм - создай форму и смотри где ошибся.
WinXP SP3, wx-2.8.10, MinGW-4.4.1, gdb-7.1.2, eclipse

VantuZZ
In need of some credit
In need of some credit
Posts: 6
Joined: Fri May 07, 2010 9:33 am
Location: russia
Contact:

Post by VantuZZ » Fri Jun 04, 2010 11:33 am

Спасибо всем! Все заработало как только стал использовать
EVT_AUINOTEBOOK_PAGE_CHANGED
EVT_AUINOTEBOOK_PAGE_CHANGING

2 borr_1:
Ранее функция выглядела так, и отладчик в нее не попадал.

Code: Select all

void MFrame::OnChangeTab(wxBookCtrlEvent& event)
{
 //some code..
}
PS
Замечательная мысль заглянуть в wxFormBuilder, жаль сам не догадался.
wxWidgets 2.9.1, Visual Studio 2008, win XP

Mojo
Super wx Problem Solver
Super wx Problem Solver
Posts: 401
Joined: Wed Sep 21, 2005 8:17 am
Location: Rostov-on-Don, Southern Russia

Post by Mojo » Fri Jun 04, 2010 6:21 pm

VantuZZ wrote:Спасибо всем! Все заработало как только стал использовать
EVT_AUINOTEBOOK_PAGE_CHANGED
EVT_AUINOTEBOOK_PAGE_CHANGING

.......

PS
Замечательная мысль заглянуть в wxFormBuilder, жаль сам не догадался.
Учитывая, что tan первый предложил использовать EVT_AUINOTEBOOK_PAGE_CHANGED
EVT_AUINOTEBOOK_PAGE_CHANGING

было бы справедливо, поставить метку Accepted Answer на его ответ.
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0

Post Reply