wxNotebook+popupMenu
-
Wie kann ich es schaffen,dass, wenn ich auf ein wxNotebook-Tab mit der rechten Maustaste klicke,die Seiten aufgeht und ein popupMenu erscheint?
Das PopupMenu hab ich geschafft,aber wie kann ich die entschprechende Seite aufmachen??
Viel Dank im voraus!
-
wxNoteBook::ChangeSelection müsste dir da weiterhelfen.
http://docs.wxwidgets.org/stable/wx_wxnotebook.html#wxnotebookchangeselection
-
Dazu brauche ich aber den Index des Tabs...den habe ich aber nicht,da ich ja mit der rechten Maustaste draufklicke...
-
wxSpina schrieb:
Dazu brauche ich aber den Index des Tabs...den habe ich aber nicht,da ich ja mit der rechten Maustaste draufklicke...
Denke der Tipp mit dem wxAUINotebook ist sehr gut. Das ist sowieso besser, und mit dem Event hast du vollen Zugriff:
http://docs.wxwidgets.org/stable/wx_wxauinotebook.html#wxauinotebook
-
Ich probiere es mahl aus..
ps:wieso gibt es eigentlich keine guten Infos über wxAuiNotebookevents?
-
Weiß ich auch nicht, musst dir halt mal den Header anschauen.
-
Also,ich hab es probiert und es funktioniert recht gut...
Leider hab ich keine Ahnung wie ich die Seite wechseln kann wenn ich mit der rechten Maustaste klicke...
Hier ist der Code:BEGIN_EVENT_TABLE(SNFrame,wxFrame) EVT_AUINOTEBOOK_TAB_RIGHT_DOWN(ID_NOTE,SNFrame::OnTabRight) END_EVENT_TABLE() void SNFrame::OnTabRight(wxAuiNotebookEvent& event){ wxMenu* tabMenu=new wxMenu(); tabMenu->Append(ID_CLOSETAB,wxT("Close Tab")); noteBook->PopupMenu(tabMenu); }
Das zeigt nur das PopupMenu an..
Wie kann ich jetzt auch die Seite wechseln,wie wenn mit der linken Maustaste auf das Tab klicken würde??
-
Du müsstest mit SetSelection das machen können, welchen Tab du da anklickst müsstest du ja im Event irgendwie rausfinden können.
-
Jaaaa!!!Dankeee!!!
BEGIN_EVENT_TABLE(SNFrame,wxFrame) EVT_AUINOTEBOOK_TAB_RIGHT_DOWN(ID_NOTE,SNFrame::OnTabRight) END_EVENT_TABLE() void SNFrame::OnTabRight(wxAuiNotebookEvent& event){ wxMenu* tabMenu=new wxMenu(); tabMenu->Append(ID_CLOSETAB,wxT("Close Tab")); noteBook->SetSelection(event.GetSelection()); noteBook->PopupMenu(tabMenu); }