|
The first option would go something like this:
You derived your own class from CMenu that handles initialization etc. Additionally, you override handlers for messages you expect to see in your main window and forward them to it.
Also, if your data is being transmitted via window messages, the input won't "stop" but rather appear paused until the user selects an option or clicks off the menu (which is desirable). When the menu goes away, the cached window messages will be handled until your app has caught up with the data stream.
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
You could have a modeless dialog that the users select options from that raises events back into your view class....
Why is common sense not common?
Never argue with an idiot. They will drag you down to their level where they are an expert.
|
|
|
|
|
Yah, I have thought that way. But is there a way to let popup menu act like a modeless dialog?
|
|
|
|
|
Not that I am aware of.
Why is common sense not common?
Never argue with an idiot. They will drag you down to their level where they are an expert.
|
|
|
|
|
It sounds like your application might be a good candidate for multiple threads.
Steve
|
|
|
|
|
Exactly what I was thinking...
Ryan
"Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Great minds think alike
Steve
|
|
|
|
|
Absolutely
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
We are currently looking at 'improving' our user interface in our 32 bit applications so that certain views are more dynamic to enhance our user experience. This requires functionality similar to the gridview control and other ASP.NET 2.0 controls that already exist. (Think of an interface similar to Microsoft Money for a comparison, or Microsoft Small Business Accounting interface)
The 'problem' is they need to be hosted in a MFC SDI application. We need to use MFC as the primary language for the UI due to a bunch of legacy code that we have already created and access to quite a few existing DLLs that are written in MFC (over 1 million lines of code and growing). I have looked into the WebBrowser control and it has problems reading the XML in the web.config application. I have published the website to the local machine (localhost) and it still does not work. The idea solution to meet the requirement by our design department would be something like this:
Create a Control that can be hosted in a MFC application (this is where we are having problems) that can display ASP.NET 2.0 pages.
Change the control URL setting (i.e c:\websites\accounts.aspx || http://localhost/<sitename>) based on what user is clicking on in the SDI application. Basically the specs are showing about 12 different pages that would show.
Allow user to interact with page and raise events that will trigger MFC forms (dialogs) to be displayed.
Allow user to filter information shown in gridviews based on security settings (data in gridviews are fed via SQL Server (2000 or 2005)
I realize this is an over simplification but basically this is what we are after. Control can be created in .NET and hosted in MFC (tlb gets created using [ClassInterface(ClassInterfaceType.AutoDual)] on the control, user interaction with the pages needs to be bi-directional (input coming from apps like filter details of accounts, user clicking on hyperlinks in the page sending messages back (raising events) to the hosting application)
I've even tried using the WebBrowser container in a native C# app and find problems with the WebBrowser control reading web.config file, probably something simple I just need to work out (problems reading past the xmlns line in the web.config file).
Has anybody seen a control that meets this requirement? A point in the right direction would be greatly appreciated. Thank you.
Dave Galligher
Director of Product Development
Cougar Mountain Software
davegalligher@cougarmtn.com
Voice: 208.375.4455 x180
Fax: 208.375.4460
|
|
|
|
|
davegalligher wrote: that can display ASP.NET 2.0 pages
what does that mean? The result of an ASP.NET 2.0 page is HTML so any browser can display it. Somehow I don't believe that is what you mean.
|
|
|
|
|
True, Static HTML is no problem, but try creating a simple ASP.NET 2.0 page, publish the site, then create a test project with a webbrowser control to access one page on the site, if you get that working add a gridview control and try bi-directional communication between the page and the application. (hyperlink on page raising event for app and app creating filters for the gridview) Won't even get into security issues for the web.config for SQL connection, encryption and decrypting which you can do very nicely on website hosted in IE, single page, I'm not so sure.
Just can't seem to get this to work in this scenario. If you have an idea how to implement would appreciate any help or any examples you may have.
Thanks for the response.
Dave Galligher
Director of Product Development
Cougar Mountain Software
davegalligher@cougarmtn.com
Voice: 208.375.4455 x180
Fax: 208.375.4460
|
|
|
|
|
Sorry I am completely lost.
davegalligher wrote: (hyperlink on page raising event for app and app creating filters for the gridview)
No idea what that means.
davegalligher wrote: security issues for the web.config for SQL connection
what does that have to do with the client application?
davegalligher wrote: which you can do very nicely on website hosted in IE
How do you host a site in IE? IE is a browser not a server. Servers host sites not browsers.
|
|
|
|
|
I figured out part of the problem. the IIS website needed to be configured to use ASP.NET 2.0.50727 for the published website, individual pages show up fine, that got the web browser control working. Now for the bi-directional control on the website. (i.e. changing the information displayed based on security rights, capturing hyperlinks on the web page and passing back to the host application?).
Dave Galligher
Director of Product Development
Cougar Mountain Software
davegalligher@cougarmtn.com
Voice: 208.375.4455 x180
Fax: 208.375.4460
|
|
|
|
|
Could anyone help me with a problem I am having with a Dialod-Based Application (first visual program for me). It uses a "Tab Control" (3 pages) that display numbers in small "Static Text Controls" in each page. The problem I'm having, is how to link a varible (for the numbers) to a StaticText Control that is placed on one of the "Dialog Forms" in the Tab Control.
I know how to use the "Static Text Controls" for displaying data with these statements:
m_strText.Format("%d", m_nNumber);
UpdateData(FALSE);
However, it doesn't work if the Static Text Control is placed on one of Dialogs of the Tab control. What is needed for these Static Text Controls to display information when used in a Tab Control.
|
|
|
|
|
Each of the static controls should have a CStatic member variable. Then it is just a simple matter of calling the SetWindowText() method. No need to mess around with UpdateData() .
"The largest fire starts but with the smallest spark." - David Crow
|
|
|
|
|
I have some code that I am using to display numbers in Static Text Controls. If a button is clicked, a number will be displayed in the Text control. It is very simple.
However, I would like to use the SetWindowText()method, and I haven't been able to get it to work. Could you give me an idea of how to correctly write this using SetWindowText().
void CDemoDlg::Button1()
{
m_nTestNum = 5;
m_strTextDisplay.Format("%d", m_nTestNum);
UpdateData(FALSE);
}
|
|
|
|
|
I have found out what the problem was, a control member variable is required.
|
|
|
|
|
zbek wrote: m_strTextDisplay
is this Variable is mapped to that Static Control!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You
|
|
|
|
|
I am wondering if a function call exists which allows me to be able to run another executable. Something like: Run("c:/test.exe")
Thanks,
Bob X
|
|
|
|
|
ShellExecute(NULL, "open", "test.exe", NULL, NULL, SW_SHOW);
if you want it in managed C++ ( C++/CLI ), his is the wrong forum.
TOXCCT >>> GEII power
[VisualCalc 3.0 updated ][Flags Beginner's Guide new! ]
|
|
|
|
|
Thanks for the function call.
I know that this is not the managed c++ forum, but there is almost no activity in the managed forum, and I have seen that there are alot of managed questions in this forum which are answered. Please correct me if I am wrong about this.
Respectfully,
Bob X
|
|
|
|
|
your kidding, aren't you ?
the MC++ forum is still alive... the fact is that people only answer when there is a question :p
and for your information, what i gave you is UNmanaged C++, so you won't be able to do anything with it in your .net code...
TOXCCT >>> GEII power
[VisualCalc 3.0 updated ][Flags Beginner's Guide new! ]
|
|
|
|
|
toxcct wrote: the MC++ forum is still alive... the fact is that people only answer when there is a question
I have posted the question in the managed forum now, and will see if I get an answer. It seems the forum is dead though when there is an average of only 1 question a day, and you have to go back several days to get a question which has been answered.
|
|
|
|
|
|
toxcct wrote: see if you can get your answer in the Lounge
Yes, I have done that before :gasp: and I did get an answer to my question, but it created a large mess and flame war...
|
|
|
|