Discussion of article "How to create a graphical panel of any complexity level" - page 5

You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Vladimir why when closing one panel both panels close? how to avoid this?
Set different names for each window - AppWindow and AppWindow1 etc.
they already have different names
Changing the string
doesn't do anything.
Or do you mean something else?
*** how to avoid this?
One advisor - one panel.
For example on top of a line:
How to make a panel be on top of objects created later than the panel itself?
For example, over a line:
Don't create graphical objects after the panel is created.
Or collapse/expand the panel.Hey Guys,
question from a self learner!
When we create panels with the library how do we put the panel in a corner that is different form the topleft?
I fiddled with OBJ_PROP_Corner but I think there is a better way by using Panel.Align and Panel.Alignment. I played around but as a non programmer I don't know what parameters to pass and how to pass them. For example the Panel.Alignment(CRect &rect) what do those Rect things mean?
Any light much appreciated
cheers
Diego
Hey Guys,
question from a self learner!
When we create panels with the library how do we put the panel in a corner that is different form the topleft?
I fiddled with OBJ_PROP_Corner but I think there is a better way by using Panel.Align and Panel.Alignment. I played around but as a non programmer I don't know what parameters to pass and how to pass them. For example the Panel.Alignment(CRect &rect) what do those Rect things mean?
Any light much appreciated
cheers
Diego
At the time of creating the panel, we indicate the coordinates. Example for the file AppWindowEditDefine.mq5
I noticed that often times the *.Destroy() function simply doesn't work. It leaves objects on the chart after the Expert Deinit() function is called, especially when rapidly changing timeframes.
A simple workaround is to use pointers, instead of directly creating, modifying, and destroying the CAppDialog object.
The above functions now become this:
After building my custom window class, I also create and destroy all Buttons, Panels, and other objects like this. Works like a charm!
*Note: Setting the delete flag and pointer to NULL might be overkill, but I have not had left-over objects since implementing.