Discussion of article "Developing graphical interfaces for Expert Advisors and indicators based on .Net Framework and C#" - page 12
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
Good afternoon! )
Peter, what do you mean by "were" and what do you mean by "high"? There was a discussion on this topic somewhere or something
Kind! )
I see )))
Looks like you are right, either we have lost Vasily, or he has lost interest in the topic ).
slightly improved version of the TradePanel Expert Advisor
In the header of the form the name of the instrument [1], instead of the inscription sell and buy on the buttons current quotes [2], and the forms themselves 'already [3] and "stick" to the borders of the screen. Sticking - third-party software https://www.nurgo-software.com/products/aquasnap.
If someone would add a magnetising function to the .sln itself, it would be great at all
When starting the EA, it will ask where TradePanel.dll is located, so you don't have to specify it in the code
Rafil, did you figure out what the problem was?
solved it the same way you did, added an enumeration to mql
First, thank you very much for your sample and share your idea.
I have download and use it well.
But I have an question it's about why we open the winform in DLL must be use the "MtGuiController.dll"?
Can it possible just import "TradePanel.dll" and use it without "MtGuiController.dll"?
Dose anybody knows how to do it, Thank you.
Hello!
Thanks for your Idea!
I have build an Form and used a TabelLayoutPanel. But If i now perform a click on a button in this TabelLayoutPanel nothing happens.
Can someone help me with that?
PS: Same Button works without TabelLayoutPanel.
The controller is brilliant and you get really good ideas about what you could do, but the MT5 has one major problem:
Every *.dll that is included in the mq5 EA becomes unusable for other accesses, and the controller cannot forward data to other dlls.
This is probably due to the fact that the C# code is compiled directly and therefore various things cannot be done.
Furthermore, multiple forms cannot be managed, as I have to have every control that receives data on both forms or only on the first one.
The only way to get round this is to use a tab control in which you then build the various pages you need, trade, messages, history etc. Or you have to resort to C++.
Or you have to resort to C++, you can import these dll's and have to import the individual functions.
You can use the numeric representation of each Event Type:
Here is an example with SendEvent Function (This code is from TardePanel EA):
You change the representation of the event TextChange for its ID which is 2, and you do this for all the function that need it.
Thanks for the workarround. However, the answer to the original question is still interesting: why is the enumeration not accessible from the EA? The enumeration is declared as public. Why did it work for others? (Or didn't it?)
Thanks in advance for the help.
was anybody able to figure out why there is below error?
The MQL compiler states : "Undeclared Identifier" for any of the enumerations down below.
I am also getting same error.
After a few tests.
To use the constants associated with the enumerations defined in the MtGuiController.dll file is necessary to use the MtGuiController name space before any constant.
For example instead of writing TextChange you have to write MtGuiController.TextChange.
I'm relative new to MQL5 and I learned a lot from this article! Thanks very much!
I have one question. Have been struggling a bit for the past 2 days to figure this out down below.
I have successfully completed each step a couple of times even on another computer but everytime when I try to compile the code I get an error message.
The MQL compiler states : "Undeclared Identifier" for any of the enumerations down below.
If I "comment" these enumerations out from MQL5 then it works accordingly which is interesting since this means that the code works but can't read the enumerations which is my guess?
If someone can help me I would greatly appreciate :)
Thanks,
After a few tests.
To use the constants associated with the enumerations defined in the MtGuiController.dll file is necessary to use the MtGuiController name space before any constant.
For example instead of writing TextChange you have to write MtGuiController.TextChange.