PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C# Textbox Public?



Technoskull
20.11.2008, 21:44
Hallo,

Also ich habe volgendes problem.
Ich habe einen Taschenrechner für die Schule programmirt welchen wir Montag haben müssen. Nun ich habe aber eine neue Form mit Wurtzel ziehen e.t.c gemacht kann aber mit ihnen keine Rechen operationen ausfüren da ich die Textboxen der 1. Form in der 2. nicht Finden kann.
Zur verdeutlichung habe ich einfach mal mein ganzes Project gehostet, vieleicht versteht ihr dann mein Problem etwas besser^^.

http://rapidshare.com/files/165771836/sharK_s_Rechner.rar.html

Darkraiser
20.11.2008, 21:51
hmm Probiere es doch mit einer öffentlichen Klasse .. auf die kannst du auch mit der Form2 und der Form 1 auf Variablen zugraifen und auch verändern

mfg

Technoskull
20.11.2008, 21:57
Also ich bin erst seit einem Quartal in der Grundbildungs-Klasse. Mit anderen worten ich verstehe noch nicht soviel davon. Nur haben wir vor Kurtzem variablen public gemacht in einer eigenen Klasse. Jetzt habe ich versucht ob ich auch Textboxen public machen kann. Deine antwort verstehe ich jetzt aber nicht ganz. Was ist eiene Öffentliche-Klasse?

Added after 35 seconds:

ach warte ich glaube jetzt weis ich was du meinst warte mal...

Added after 10 minutes:

nein also ich kriege das nicht hin ich habe jetzt mal eine Klasse gemacht mit
class Class2
{
private double txt1;
private double txt2;

//input Zeit:
public void set_txt1(double z)
{
txt1 = z; //Wert einlesen
}

//Output Zeit:
public double get_txt1()
{
return txt1;
}

//input Zeit:
public void set_txt2(double y)
{
txt2 = y; //Wert einlesen
}

//Output Zeit:
public double get_txt2()
{
return txt2;
}
}
ist das richtig so?

Darkraiser
20.11.2008, 22:13
hmm also soweit ich weis brauchst du dazu noch ne header datei für die ganzen deklarationen :) aber ich versteh nich warum du alles auf eine Form machst und dass was du auf form2 hast mit nem Panel auf die Form 1 setzt

mfg

Technoskull
20.11.2008, 22:23
puuhhh...

also ich komme total durcheinander :(
ich fummel die ganze zeit rum und versuche das irgentwie hin zu bekommen... aber so ganz klapt das nicht... und was ne header Datei ist weis ich leider nicht.wäre sehr lieb wenn einer mal die Datei runterladen kann das ändern und wieder uppt damit ich sehe wie das geht sonst checke ich das nie...

Darkraiser
20.11.2008, 22:38
So Techno ich hab mir mal erlaubt das ding mal mit einem Panel zu machen :) kannst ja nochn bischen dran rumfummeln .. aber es fehlen noch ne menge rechnungen .. btw für Hochzahlen verwendest am besten


#include "math.h"

int main()
{
double hoch = 0;
hoch = pow(normalezahl, hochzahl);

system("pause");
return 0;
}

aber ers ma dein Projekt :) hf

Shark´s Taschenrechner (http://rapidshare.com/files/165784836/sharK_s_Rechner.rar.html)

mfg

otto
20.11.2008, 22:54
bei mir is die rar beschädigt @ darkraiser ;:-X
0__.__o

Technoskull
20.11.2008, 22:55
Ja doch ich muss sagen ich muss sagen diese Lösung gefällt mir^^.
Ich werde das noch Grafisch was mehr anpassen und dann ist es fast fertig(ach und die Quellcodes für Wurtzel Ziehen, aber das ist ja leicht;))
Vielen dank

otto
20.11.2008, 22:56
Joa, hau doch noch so ne ganz leichte transparents rein, sieht bestimmt geiL aus ;)

Darkraiser
20.11.2008, 22:56
jo kein Prop ;) man hilft ja wo man kann ^^ wobei ich muss sagn ,.... designst du dat selber??

mfg

Steav
27.11.2008, 21:00
Hallo,

Also ich habe volgendes problem.
Ich habe einen Taschenrechner für die Schule programmirt welchen wir Montag haben müssen. Nun ich habe aber eine neue Form mit Wurtzel ziehen e.t.c gemacht kann aber mit ihnen keine Rechen operationen ausfüren da ich die Textboxen der 1. Form in der 2. nicht Finden kann.
Zur verdeutlichung habe ich einfach mal mein ganzes Project gehostet, vieleicht versteht ihr dann mein Problem etwas besser^^.

http://rapidshare.com/files/165771836/sharK_s_Rechner.rar.html


Du brauchst in der Form2 einen Zugriff auf Form1. Die kannst Du beim Erstellen von Form2 übergeben. Zum Beispiel so:

Schritt1:
Hinzufügen einer Property für die Zugriffsinstanz in Form2


public partial class Form2 : Form
{
private Form1 _parent;
public Form1 Parent1
{
get { return Parent; }
set { Parent = value; }
}


double Eingabe(TextBox tb)
{
....



Schritt2: Setzen der Property nach dem Erstellen von Form2


private void button6_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.ParentForm = this;
frm2.Show();
}



Danach kannst Du in Form2 folgenderweise auf Deine Textbox in Form1 zugreifen:



public void button2_Click(object sender, EventArgs e)
{
double zahl1 = Eingabe(this.ParentForm1.textBox1);
double zahl2 = Eingabe(this.ParentForm1.textBox2);

//lblErgebnis.Text = Convert.ToString(zahl);
this.ParentForm1.label2.Text = Convert.ToString(zahl1 + zahl2);
}

otto
27.11.2008, 21:27
Ja wenn die Lösung dir gefällt, (= sie funzt) ??
Problem jetz gelöst oder nicht !?
..