om jag skriver tex <html> i en textbox, och vill, när man gör en radbrytning, att det lägger till </html> på en ny rad.. hur gör jag det? Kanske så här? tack, det funkade aldeles alldeles utmärkt... det är bara ett problem.. varje gång jag ställer mig på raden med <html> och trycker enter så läggs det till en </html>... hur kan jag göra för att detta inte ska hända... måste ju känna av att det redan står <html> & </html>.. har provat olika sätt men inte lyckats... om jag dessutom vill ha en speciell fär på <html>-taggarna, hur gör jag då?? <code> tack.. funka skit bra... men nu kom ett till problem... när jag sparar min fil som jag skrivit i mitt program som en .htm och kollar på den ser det ut på följande sätt.... Standard är RTF. Lägg till flaggan rtfText: min spara funktion ser ut så här... On Error GoTo ERR finns det nått kommando för att spara utan at visa spara som rutan?? kan man känna av att man redan sparat en gång?textbox... skriv ut nytt värde...
Sv: textbox... skriv ut nytt värde...
<code>
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim sTag As String
Dim sText As String
Dim lStart As Long
Dim lStop As Long
Select Case KeyAscii
Case vbKeyReturn
sText = Text1.Text
lStop = Text1.SelStart
lStart = InStrRev(sText, "<", lStop)
If lStart Then
If lStop > lStart Then
sTag = Mid$(sText, lStart, lStop - lStart + 1)
If StrComp(sTag, "<html>", vbTextCompare) = 0 Then
Text1.SelText = vbCrLf & "</" & Mid(sTag, 2, Len(sTag) - 2) & ">"
Text1.SelStart = lStop + 2
KeyAscii = 0
End If
End If
End If
End Select
End Sub
</code>Sv: textbox... skriv ut nytt värde...
Sv: textbox... skriv ut nytt värde...
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim sTag As String
Dim sText As String
Dim lStart As Long
Dim lStop As Long
Select Case KeyAscii
Case vbKeyReturn
sText = Text1.Text
lStop = Text1.SelStart
lStart = InStrRev(sText, "<", lStop)
If lStart Then
If lStop > lStart Then
sTag = Mid$(sText, lStart, lStop - lStart + 1)
If StrComp(sTag, "<html>", vbTextCompare) = 0 Then
If InStr(lStop, sText, "</html>", vbTextCompare) = 0 Then
Text1.SelText = vbCrLf & "</" & Mid(sTag, 2, Len(sTag) - 2) & ">"
Text1.SelStart = lStop + 2
KeyAscii = 0
End If
End If
End If
End If
End Select
End Sub
</code>Sv: textbox... skriv ut nytt värde...
<code>{\rtf1\ansi\ansicpg1252\deff0\deftab720{\fonttbl{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}{\f2\fswiss Verdana;}{\f3\fswiss Verdana;}}
{\colortbl\red0\green0\blue0;}
\deflang1053\pard\plain\f2\fs16 <html>
\par <head>
\par <title>hej hej</title>
\par </head>
\par
\par <body>bla bla bla...</body>
\par
\par </html>
\par }</code>
varför då??Sv: textbox... skriv ut nytt värde...
<code>
RichTextBox1.SaveFile strFileName, rtfText
</code>Sv: textbox... skriv ut nytt värde...
<code>On Error GoTo ERR
CommonDialog1.Filter = "Hypertext-fil (*.htm)|*.htm|Alla filer (*.*)|*.*"
CommonDialog1.ShowSave
rtText.SaveFile strFileName, rtfText
Exit Sub
ERR:
If Not ERR = cdlCancel Then Resume Next
</code>
varför funkar det inte..?? det sparas inget...Sv: textbox... skriv ut nytt värde...
CommonDialog1.Filter = "Hypertext-fil (*.htm)|*.htm|Alla filer (*.*)|*.*"
CommonDialog1.ShowSave
rtText.SaveFile CommonDialog1.FileName, rtfText
Exit Sub
ERR:
If Not ERR = cdlCancel Then Resume Next Sv: textbox... skriv ut nytt värde...