By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,402 Members | 1,047 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,402 IT Pros & Developers. It's quick & easy.

[question] Event Handeling Between Two wxPanles in A wxNotebook

P: n/a
Ok i have a wxFrame with a wxNotebook that has two wxPanels, lets call
them panel_1 and panel_2

i have wxTextCtrl in panel_1 (call it panel_1_ctrl) that i want the
user to be able to fill up. I then want the user to be able to click a
button (i.e. create an EVT) and have Value() of panel_1_ctrl be sent a
wxTextCtrl in panel_2.

So can i do this directly, i.e. is there a way to tell panel_2 that
something has happended in panel_1 and to send panel_2 that data? Or do
i have to go through the wxFrame i.e (panel_1 tells wxFrame that EVT
happened, wxFrame then tells panel_2).
in short panel_1_ctrl sends Value() to panel_2_ctrl.

Thanks for any help that you can give me.

Jul 18 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
well i have gotten to the point that i can send msgs one way by passing
the to panel (panel_2 in example) as a param to __init__ of the from
panel (panel_1)

Jul 18 '05 #2

P: n/a
That's the Visual Basic way to do it.

I prefer it this way:

Controls work on models. If a control has to store a value it does so by
calling MyDataPool.storeMyValue(self.GetValue()).

When the NotebookPage is changed, the new page tells all controls to update
themeselves: self.SetValue(str(MyDataPool.myValue())).

Recently I even prefer controls doing that by theirselves. They all have a
timer, to periodically check whether or not they have to update themselves.
But such a design is necessary only if the controls display current values,
coming e.g. from an OPC server.

HTH
Franz GEIGER

<su*************************@gmail.com> schrieb im Newsbeitrag
news:11**********************@o13g2000cwo.googlegr oups.com...
Ok i have a wxFrame with a wxNotebook that has two wxPanels, lets call
them panel_1 and panel_2

i have wxTextCtrl in panel_1 (call it panel_1_ctrl) that i want the
user to be able to fill up. I then want the user to be able to click a
button (i.e. create an EVT) and have Value() of panel_1_ctrl be sent a
wxTextCtrl in panel_2.

So can i do this directly, i.e. is there a way to tell panel_2 that
something has happended in panel_1 and to send panel_2 that data? Or do
i have to go through the wxFrame i.e (panel_1 tells wxFrame that EVT
happened, wxFrame then tells panel_2).
in short panel_1_ctrl sends Value() to panel_2_ctrl.

Thanks for any help that you can give me.

Jul 18 '05 #3

P: n/a
so you run data pool as like a sruct that contains all your global
objects? That sounds like an iteresting way of doing things. i try to
stay away from gloabs as much as possible but this might be a good time
to queue up that particular tool

thanks for your reply

Jul 18 '05 #4

P: n/a
My DataPool then is a singleton, well, actually, a Borg. See Alex Martelli's
recipe for that. If you use new style classes, then you have to look for
"Singleton" in the cookbook.

HTH
Franz GEIGER
"MyHaz" <su*************************@gmail.com> schrieb im Newsbeitrag
news:11**********************@f14g2000cwb.googlegr oups.com...
so you run data pool as like a sruct that contains all your global
objects? That sounds like an iteresting way of doing things. i try to
stay away from gloabs as much as possible but this might be a good time
to queue up that particular tool

thanks for your reply

Jul 18 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.