Hej om man har 3 st formulär Nytt?? Innan du ger dig vidare så kanske du borde handla boken nedan. Egen öppningsfunktioner är det som stämmer nog bäst mot OO. Man ska man kapsla kod och funktionalitet. Objekt ska behöva känna till så lite som möjligt av varandra för att kunna anropa dess egenskaper och metoder.<br> Det stämmer alldeles utmärkt om jag får säga det själv. Om inte annat kan man ju göra en sub som öppnar olika formulär beroende på indata men om man vill ha en Q&D så...Öppna nytt formulär
Form1 Form2 From3
När man kör programmet som körs ju Form1 där har jag då en menyrad där man skall kunna öppna Form2 eller Form3
Vad skrivar man
Jag har för mig att man skrev
Load From2 eller liknade men det går ju inte här iaf nu kör jag VB.NetSv: Öppna nytt formulär
Jo det kan man säga, du bör försöka glömma det gamla vb-tänkandet helt förutom syntaxen.
Nu i .net är allting objektorienterat, alltså ett formulär är en klass som du måste instansiera innan du kan använda den.
Tips: Köp boken"OOP men Microsoft VisualBasic.Net och Microsoft Visual C# Steg för steg" (pagina.se)Sv: Öppna nytt formulär
Det blir roligare ändå senare när du ska skicka variabler mellan formulär.
I VB6 var det ju brukligt att kunna skriva tex:
<code>
frm2.txtNamn.text = frm1.txtNamn.text
</code>
Det funkar inte i .NET. Här blir det istället kommunikativa klasser eller egna öppningsfunktioner, eller det kanske enklaste. Skapa en ny instans av klassen för det nya formuläret och tilldela vissa värden innan du skriver frm.Show()
<code>
Dim frm2 as New EgetFormulär
EgetFormulär.txtNamn.text = Me.textNamn.text
</code>
Bara ett exempel på just det med objektorientering.
//Mikael SandSv: Öppna nytt formulär
<br>
Ett mer lämplig exempel är då en öppningsfunktion:
<code>
Public Sub ShowNamn(ByVal Namn As String)
txtName.Text = Namn
Show()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frmForm As Form1 = New Form1()
frmForm.ShowNamn(txtName.Text)
End Sub
</code>Sv: Öppna nytt formulär
Men om man ska följa reglerna kring OOP (varför skriver alla OO? Har jag missat något?), så ska naturligtvis koden se ut som din. Vill man bygga ut det hela kan man ju dessutom baka in lite rättigheter och säkerhet i just formuläröppningssubben; Får användaren se detta formulär??
The sky is the limit
Dessutom önskar jag alla en god fredag och hälsar speciellt till alla Orustbor som verkar gå en blöt fredag till mötes vare sig de vill eller inte.
//Mikael Sand