Discussion of article "Improving Panels: Adding transparency, changing background color and inheriting from CAppDialog/CWndClient" - page 2
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, thanks for the articles, very useful material. I may have a lamer question...
There is an object of CBmpButton type - a button with an image. So, the button image itself acts as a resource here. How to get access to its properties? Or is it impossible?
An example from the Documentation.
There I played with the CControlsDialog::CreateBmpButton1() method:
The object of the image itself on the panel is not found using ObjectFind(), which is quite natural. How to find it, if it is possible at all?
Thanks.
Vladimir, thanks for the articles, very useful material. I may have a lamer question.....
There is an object of CBmpButton type - a button with an image. So, the button image itself acts as a resource here. How to get access to its properties? Or can't I?
Example from the Documentation.
There I played with CControlsDialog::CreateBmpButton1() method:
The object of the image itself on the panel is not found using ObjectFind(), which is quite natural. How to find it, if it is possible at all?
Thanks.
An image (drawing) is not an object. Objects are lines, rectangles ... graphic elements.
Hello, Vladimir. You have added an additional ClientArea to the window. And then you use CMyWndClient::ShiftButton method to scroll buttons. This is not very convenient, because there can be many buttons in the window. Also, there can be a lot of UI elements besides buttons. So, you see, writing methods for each element and not forgetting to call them in scrolling handlers is a challenge. Isn't it easier to scroll ClientArea? Then, all UI elements contained in it will be scrolled automatically. It is enough to specify only ClientArea scrolling in the handlers.
Hello, Vladimir. You have added an additional ClientArea to the window. And then you use CMyWndClient::ShiftButton method to scroll buttons. This is not very convenient, because there can be many buttons in the window. Also, there can be a lot of UI elements besides buttons. So, you see, writing methods for each element and not forgetting to call them in scrolling handlers is a challenge. Isn't it easier to scroll ClientArea? Then, all UI elements contained in it will be scrolled automatically. It is enough to specify only ClientArea scrolling in the handlers.
Please write such an example. I think everyone will be interested in such an implementation.
Please write such an example. I think everyone will be interested in such an implementation.
After a bit of thinking, I figured it out. Such scrolling cannot be implemented because of the impossibility of partial hiding of any chart objects (in this case it is ClientArea and buttons). In other UIs it is implemented differently. They display a rectangular area that falls within the scrolling area, and everything else is hidden. Hence the confusion.