RickardMedlem sedan maj 2001284 inlägg
Hejsan!
Jag är helt nybörjare och sittyer å leker och experimenterar i VB.NET, och har nu kört fast lite på en funktion.
Jag vill via menyn "file|open" i en MDIcontainer, öppna en txt fil i en MDIchild... men vettefan hur jag gör det...
Jag har tidigare lekt i Delphi 6.0, men där lånade jag andras programkod och gjorde om den så den passade mig, nu vill jag lära mig på egen hand, men får det inte att fungera...
En screenshot på delphiprogrammet finns på https://www.midnight-sun.org/tos3.JPG
Jag har kommit så långt som att få upp en open file dialog och filtrerar efter enbart .txt ...
Men resten kan jag inte... någon som kan fylla i åt mig?
Private Sub mnuOpenItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuOpenItem.Click
OpenFileDialog1.Filter = "Textdokument (*.txt)|*.txt"
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
End If
End Sub
Hoppas ni förstår vad jag menar.
/Rickard
RickardMedlem sedan maj 2001284 inlägg
Ingen som vill/kan hjälpa mig?
Eller har jag åter igen skrivit för otydligt vad det är jag vill? =(
fredrikMedlem sedan dec. 19991 082 inlägg
Efter du har gjort "ShowDialog()" kan du hämta ut vald fil med egenskapen "FileName", dvs:
dim strSelectedFile as string = OpenFileDialog1.FileName
RickardMedlem sedan maj 2001284 inlägg
Nu förstår jag lika mycket som en babian förstår en isbjörn.. =)
Du har inte lust/möjlighet att skriva klart hela koden för just detta så vore jag hemsk glad... =)
/Rickard
fredrikMedlem sedan dec. 19991 082 inlägg
Hmm....jag trodde frågan var hur du hämtade ut valt filnamn...men men, här kommer lite kod för att visa hur du läser in filen med...
OpenFileDialog1.Filter = "Textdokument (*.txt)|*.txt"
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Dim strFileName As String = OpenFileDialog1.FileName
Dim strR As New IO.StreamReader(strFileName)
Dim Content As String = strR.ReadToEnd()
MessageBox.Show(String.Concat("Filen du valde innehöll: ", vbCrLf, Content))
End If
Sen antar jag att du ska visa upp texten i någon form av kontroll med....
RickardMedlem sedan maj 2001284 inlägg
Tack, nu kom jag en liten bit på vägen i allafall...
Men inte ritkigt dit jag ville...
Har suttit å mixtrat lite med det där själv nu men inte kommit någon vart.
Saken är ju den, att huvudprogrammet är en MDIparent, som skall öppna textfiler i små mdichilds....
Så som den där koden gör med en inläst fil, är ju att öppna filen i en dialogbox med en OK knapp...
Det är ju meningen att den inlästa filen skall läsas in till en MDIchild med en ritchtextbox i, och däri kunna editeras, skrivas ut eller whatever...
Å om vi säger så här då... programmets namn "TOS" ska vara en förkortning utav " Text Operating System " eftersom det påminner om Win3.1 med alla små program liggandes längst nere i ett hörn, så ska denna MDIparrent sammla alla notepads (eller i detta fall, alla RitchTextBoxes) i ett enda fönster.
fredrikMedlem sedan dec. 19991 082 inlägg
ok...ja, jag skrev ju bara exemplet för att öppna och läsa ut textfilen....
ok..gör så här
1. Skapa ett formulär som du sätter till "IsMdiMdiContainer = true".
2. Skapa ett till formulär där du lägger en richTextbox
3. I huvudformuläret skapar du en knapp/meny eller vad du nu vill ha för att öppna nya filer
4. Vid händelse för öppna skapar du en ny instans av textbox-formuläret och sätter dess MdiParent till Me, typ:
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Dim strFileName As String = OpenFileDialog1.FileName
Dim strR As New IO.StreamReader(strFileName)
Dim Content As String = strR.ReadToEnd()
Dim frmRef as new FrmTxtForm()
frmRef.mdiParent = me
frmRef.RICHTEXTBOX_CONTROL.text = Content
frmRef.Show()
End If