Deutsch
Forum

RTF Problem

 

Georg
Hovenbitzer
Hallo zusammen,

ich habe hier ein sehr seltsames Problem.

Der code unten erstellt, wenn noch nicht vorhanden, eine RTF Datei und läd diese beim Drücken von Go immer in das RichEdit Feld.
Soweit klappt auch alles
Wenn ich nun aber z.B. Zeile 1 schreiben, Edit Fenster schließen, wieder öffnen, den ganzen Text löschen, Fenster schließen und wieder öffnen.
Bis dahin ist alles O.K.

Wenn ich nun einen neuen Text schreiben und das Edit Fenster schließe wird dieser nicht mehr gespeichert
Die leere rtf Datei ist dabei immer 128Bytes groß !!!

Mache ich da was falsch oder geht die Datei beim Speichern, wenn kein Inhalt vorhanden ist, kapput ?!?

Gruß
Georg
KompilierenMarkierenSeparieren
Declare Infofenster&
Declare Inforich&
Declare Infoend&
Declare Go&

Proc Infofenster

    Infofenster& = @Create(Window,%Hwnd,Infos,((%Maxx / 2) - 300),((%Maxy / 2) - 200),600,400)
    Inforich& = @Create(RichEdit,Infofenster&,,1,1,592,320)
    @Sendmessage(Inforich&,$45B,1,0)

    If @Fileexists(D:\RTFInfo.rtf)

        @Rtf(LoadRTF,Inforich&,D:\RTFInfo.rtf)

    Endif

    Infoend& = @Create(Button,Infofenster&,Beenden,259,328,82,22)
    @Setfocus(Inforich&)

Endproc

Proc Infosave

    @Rtf(SaveRTF,Inforich&,D:\RTFInfo.rtf)

Endproc

Cls
Go& = @Create(Button,%Hwnd,Go,100,100,80,40)

Whilenot %Key = 2

    Waitinput

    If @Clicked(Go&)

        Infofenster
        @Setfocus(Infofenster&)

    Elseif (@Clicked(Infoend&) And (@Getactivewindow() = Infofenster&))

        Infosave
        @Destroywindow(Infofenster&)
        @Setfocus(%Hwnd)

    Endif

Endwhile

End
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
21.07.2006  
 




Georg
Hovenbitzer
Hallo zusammen,

das Problem kann man z.B. so umgehen:
KompilierenMarkierenSeparieren
Declare Infofenster&
Declare Inforich&
Declare Infoend&
Declare Go&
Struct Gettextlengthex = Flags&,
Codepage&
Declare Gettextlengthex#
Dim Gettextlengthex#,Gettextlengthex

Proc Infofenster

    Infofenster& = @Create(Window,%Hwnd,Infos,((%Maxx / 2) - 300),((%Maxy / 2) - 200),600,400)
    Inforich& = @Create(RichEdit,Infofenster&,,1,1,592,320)
    @Sendmessage(Inforich&,$45B,1,0)

    If @Fileexists(D:\RTFInfo.rtf)

        @Rtf(LoadRTF,Inforich&,D:\RTFInfo.rtf)

    Endif

    Infoend& = @Create(Button,Infofenster&,Beenden,259,328,82,22)
    @Setfocus(Inforich&)

Endproc

Proc Infosave

    If @Sendmessage(Inforich&,$45F,,Gettextlengthex#,0) > 0

        @Rtf(SaveRTF,Inforich&,D:\RTFInfo.rtf)

    Else

        Assign #1,D:\RTFInfo.rtf
        Erase #1

    Endif

Endproc

Cls
Go& = @Create(Button,%Hwnd,Go,100,100,80,40)

Whilenot %Key = 2

    Waitinput

    If @Clicked(Go&)

        Infofenster
        @Setfocus(Infofenster&)

    Elseif (@Clicked(Infoend&) And (@Getactivewindow() = Infofenster&))

        Infosave
        @Destroywindow(Infofenster&)
        @Setfocus(%Hwnd)

    Endif

Endwhile

End
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
21.07.2006  
 




Georg
Hovenbitzer
Hallo zusammen,

könnte sich jemand bitte mal diesen code ansehen

Das Problem mit der leeren RTF Datei kann ich ja umgehen.
Aber wenn man das ganze übersetzt stürzt das Programm mit einer Schutzverletzung ab.
Und dies immer wenn er eine RTF Datei mit Inhalt beim Aufrufen des Fensters lesen will

Habe ich hier etwas total falsch verstanden ?!?!
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
25.07.2006  
 




Rolf
Koch
Hi Georg,

versuchs mal mit folgendem:
[...] 
 
25.07.2006  
 




Georg
Hovenbitzer
Hallo Rolf,

vielen Dank, aber mit dem Tip hat es auch nicht geklappt.

Aber wenn man mit Control ein RTF Edit erstellt, klappt alles.
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
25.07.2006  
 




Sebastian
König
Mit Profan2Cpp funktionierts ohne Absturz - verkehrte Welt
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
25.07.2006  
 




RGH
Georg Hovenbitzer
Hallo Rolf,

vielen Dank, aber mit dem Tip hat es auch nicht geklappt.

Aber wenn man mit Control ein RTF Edit erstellt, klappt alles.


Mit welcher Control-Zeile genau klappt alles? Wenn Du diese mal postest, kann ich sie mit meinem Code in XProfan vergleichen und vielleicht so dem Problem auf die Spur kommen.

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
25.07.2006  
 




Georg
Hovenbitzer
Hallo Roland,

meine Antwort an Rolf war etwas voreilig.

Mit der Zeile:
KompilierenMarkierenSeparieren
@Control(RichEdit,,$5430D1C4,1,1,592,340,InfoFenster&,100,%hInstance,$210)

Bekomme ich es im Interpreter sauber zum Laufen, aber als EXE nicht mehr
Dies ist im aber eben erst aufgefallen, da ich mich vorher schon für ein Multiedit entschieden habe.
Der Hauptgrund war dafür, dass man die Funktionen auf der rechten Maustaste direkt hat und nicht selbst Coden muss.
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
26.07.2006  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

2.468 Betrachtungen

Unbenanntvor 0 min.
H.Brill08.02.2022
RudiB.24.11.2021
Uwe Lang17.07.2018
Peter Max Müller13.11.2017

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie