|
yes you can :
into your form2, you create a member that is a pointer to a form...
then you allow the constructor of form2 to receive a pointer to a form (form1 for example) that will be copied in its member...
TOXCCT >>> GEII power [toxcct][VisualCalc]
|
|
|
|
|
Still i can't do it. Here is snipset from a code. Tell me what am i doing wrong.
Form1:
private: System::Void Form1_Load(System::Object * sender, System::EventArgs * e)<br />
{<br />
Form2 te = new Form2(this);<br />
Form2->Show();<br />
}<br />
public: void test()<br />
{<br />
MessageBox::Show(S"Hello from Form1");<br />
}
Form2:
public:
Form2(Form *test)<br />
{<br />
InitializeComponent();<br />
frmTest = test;<br />
}<br />
Form *frmTest;
Form2::
i use
frmTest->test();
i got compiling error
c:\Projecti\t3\t33.h(86): error C2039: 'test' : is not a member of 'System::Windows::Forms::Form'
Please help me.
|
|
|
|
|
Is your first Form called Form ? Or is Form a base class ? If it's a base class, of course you can only see the base class members.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
It supposted to be name Form1. If i use like Form1 *test;. then i get verious errors.
|
|
|
|
|
I had a similar problem. I just created a class that I pointed both forms to and used it to pass information between the forms.
So creat a new __gc class. From form1 create an object of that class. then point it to form2's object.
Pass is the class i'm using to pass information.
Declare Pass *pass
<br />
Pass *pass = new Pass();<br />
Form2 *input = new Form2(); <br />
input->pass1 = pass;<br />
input->ShowDialog();<br />
<br />
label_InputSomthing->Text = pass->somthing;<br />
Invalidate();<br />
<br />
Pass *pass1;<br />
pass1->something = textBox_something->Text;<br />
<br />
Close();<br />
|
|
|
|
|
How Does the Class Pass look like. can i also execute a function in Parent Form. It's easy to pass to Child Form than to Parent Form.
|
|
|
|
|
Create a Basic __gc class and declare a String or int or whatever you want in it. Ex
String *whatToPass;
|
|
|
|
|
Well. thanks that worked. But how can call Function (In parent Window) from Child Form
|
|
|
|
|
Put the function in the Class so both formms can use it. You could also make it static.
|
|
|
|
|
Thanks for the help. That realy helps a lot.
|
|
|
|
|
Please,
How I get Full File Name(PATH and File Name) from HANDLE of API "CreateFile"??
Help...!!
|
|
|
|
|
With TextBox i wan't to type Interger only.
I know to override key event. if i press a letter, i know how to handle it, but i don't know how can i block it
|
|
|
|
|
This is not a managed C++ question.
You need to catch the keyboard events, and (from memory ) then return TRUE instead of calling the base class. Then this tells MFC that you handled the event. There are actually controls that do this all over the web, including on this site.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
This is managed c++ question.
I am using .net framework 1.1. I don't use MFC application
|
|
|
|
|
Saksida Bojan wrote:
I am using .net framework 1.1. I don't use MFC application
Well, if you're creating a windowed MC++ app ( and the whole world would be wondering why ? ), then the answer is the same, the same messages are being sent and you need to intercept them just the same.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
private: System::Void txtID_KeyDown(System::Object * sender, System::Windows::Forms::KeyEventArgs * e)
{
}
1. This is KeyEvent. I can intercept the messege, but how to block it.
2. How can i return True and event handel has Void for returning.
3. When i press, this event is fired. But when this event is over, it add a char. i can't block that adding.
i found something on this webpage, but i don't want to write a dll.
Is this even posible. I had VB6 and was posible with this method. I prefear MC++
|
|
|
|
|
Saksida Bojan wrote:
How can i return True and event handel has Void for returning.
Obviously, you're using MC++ events, not the events that C++ supports natively.
KeyEventArgs has a property called 'Handled'. Set it to true. This will in effect do exactly what returning true in pure C++ would do, I would hope. If it's already true, then you need to catch the event further down, but I would hope not.
Saksida Bojan wrote:
i found something on this webpage, but i don't want to write a dll.
LOL - I don't see why you'd need to do that.
Saksida Bojan wrote:
Is this even posible. I had VB6 and was posible with this method. I prefear MC++
Yes, it's possible, but I was giving you pure C++ advice, and you're using .NET events. I've not used MC++, I don't see the point. Sorry if we muddled a bit to get to what I hope is the right answer.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Thank you for the help. But i noticed that Handled event is working in KeyPress Only. But it doesn't work in KeyUp and KeyDown EventHandle
|
|
|
|
|
i'm a new programmer in VC++.
recently,i was troubled when establishing a new CTreeView class in my project.everytime i establish a new Class based on CTreeView,an error display:error C2504: 'CTreeView' : base class undefined.
meanwhile,when selectting the CTreeView,a corresponding infomation shows from automation:
the base class does not support automation.
since this,a correponding error C2504 show,what can i do?
|
|
|
|
|
#include "afxcview.h"
http://blog.joycode.com/jiangsheng
http://blog.csdn.net/jiangsheng
Command what is yours
Conquer what is not
---Kane
|
|
|
|
|
Hi,
i wanna read text file .
my text file contain double value ! i wanna read this
double value & copy them in array of double in MC++ .
But i can not understand.
is anyone help me?
Best Regards.
|
|
|
|
|
Proper C++ will do this for you, iostreams allow you to specify what you expect to read. I'm not sure if the System.IO namespace does this, or if you need to parse the string yourself.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Hi,
Thanks a lot.
I use StreamReader and then readLine() then parse string !
But i found i can open file in binary ,then select which
type i wanna read.
Best Regards.
Mostafa
|
|
|
|
|
I have written an application using MFC CSocket.
I have done some test.
It seems that OnReceive processing waits the end of the OnIdle method. OnReceive don't interrupt OnIdle!!
Is it true ?
Thanks.
Emanuele Reverberi.
|
|
|
|
|
I was wondering how large applications are put together when you have various people working on them. I would imagine that each person would have classes that they are incharge of creating and then making them a dll file.
I am working on an application that has several parts. I created each part as its own project. I can not figure out how to combine them into one application.
For instance, I created an app that creates and formats some text. This is using the .net forms. The main application has a button that opens an instance of this text formating app. How can i get the text formatting app into my main program. I am not sure how to compile it as a dll because it always compiles into an exe. Any advise or resourses would be great. Thanks!
|
|
|
|