Jeg sakla have en commondialog til at gemme og åbne fra en rtf controller....
Det er det eneste...
jeg har skrevet alt andet code, men jeg mangler den hvor at den skriver til en fil...
Den skal kunne åbne ascii dokumenter, og gemme dem igen, uden at der mistes nogen data.
OK, her laver jeg lige et hurtigt eksempelprogram, så er det meget lettere.
Opret et nyt
Standard EXE project. Du får som sædvanlig en form kaldet
Form1. Plask en
CommonDialog kontrol på formen og en
Microsoft RichText-kontrol. Ideen er, at vi gemmer det, der findes i RTF-boksen.
Plask to knapper på formen (vi kalder dem
btnGem og
btnHent) og tilføj så følgende kode til formen:
<pre>Private Sub btnGem_Click()
'
' Find den fil, brugeren vil gemme til.
'
With Form1.CommonDialog1
'
' Indstil filtype og maske. Gem også "open read
' only" check boxen.
'
Let .Filter = "RTF Filer (*.rtf)|*.rtf"
.Flags = cdlOFNHideReadOnly
'
' Vis common dialog i "gem-tilstand".
'
.ShowSave
'
' Når vi kommer hertil, har brugeren enten
' angivet et navn, eller også er der intet
' navn.
'
If .FileName = "" Then
'
' OK, der er ikke noget navn, så vi gemmer
' ikke noget.
'
Dim strFejlTekst As String
Let strFejlTekst = _
"Du må angive et navn og trykke på " & _
"OK, hvis programmet skal gemme din fil."
MsgBox strFejlTekst, vbInformation, _
"Intet Navn"
'
' Hop ud med det samme.
'
Exit Sub
End If
'
' Hvis vi kommer så langt som hertil, så var
' der et navn, og vi beder RTF boksen gemme
' sine data i den angivne fil.
'
RichTextBox1.SaveFile .FileName
End With
End Sub
Private Sub btnHent_Click()
'
' Find den fil, brugeren vil gemme til.
'
With Form1.CommonDialog1
'
' Indstil filtype og maske. Gem også "open read
' only" check boxen.
'
Let .Filter = "RTF Filer (*.rtf)|*.rtf"
.Flags = cdlOFNHideReadOnly
'
' Vis common dialog i "åbn-tilstand".
'
.ShowOpen
'
' Når vi kommer hertil, har brugeren enten
' angivet et navn, eller også er der intet
' navn.
'
If .FileName = "" Then
'
' OK, der er ikke noget navn, så vi gemmer
' ikke noget.
'
Dim strFejlTekst As String
Let strFejlTekst = _
"Du må angive et navn og trykke på " & _
"OK, hvis programmet skal gemme din fil."
MsgBox strFejlTekst, vbInformation, _
"Intet Navn"
'
' Hop ud med det samme.
'
Exit Sub
End If
'
' Hvis vi kommer så langt som hertil, så var
' der et navn, og vi beder RTF boksen hente data.
'
RichTextBox1.LoadFile .FileName
End With
End Sub</pre>
Det skulle vist være det hele. Disse rutiner gemmer/henter både tekststørrelser, farver, og så videre.
Software is here and now but rock and roll is forever.[Redigeret d. 11/05-03 16:58:41 af Herluf Hermansen][Redigeret d. 11/05-03 16:59:56 af Herluf Hermansen]