Autor | Thema: MultiEdit mit über 32k Speicher | | Datum:10.02.02 20:26 
(frankabbing@12move.de) | |
Hallo,
weiß jemand, wie ich ein mehrzeiliges MultiEdit Feld erzeugen kann, das mehr als 32k Zeichen aufnehmen kann, also ohne Speicherbeschränkung? Am besten mit horizontalen und vertikalen Scrollbalken integriert...
Geht das ?
Gruß, Frank
|
| | Datum:11.02.02 10:32 
(sv.sch@freenet.de) | |
Hallo,
>weiß jemand, wie ich ein mehrzeiliges MultiEdit Feld erzeugen kann, das mehr als 32k Zeichen aufnehmen kann, also >ohne Speicherbeschränkung?
Soweit ich weiß, geht das nur mit einem RichEdit-Control.
Sven
|
| | Datum:11.02.02 19:59 
(frankabbing@12move.de) | |
Hallo,
ja? Und wie kann ich sowas erzeugen. Hast du vielleicht ein Beispiel parat?
Gruß, Frank
|
| | Datum:11.02.02 21:14 
(frankabbing@12move.de) | |
Hallo,
momentan versuche ich mich an diesem MultiEdit.
Kann das mehr Speicher als 32k aufnehmen, weiß das jemand?
x&=@Control("EDIT","",$548100c4,cx1&,cy1&,Cx2&,cy2&,%hwnd,0,%hinstance,$0200)
...und dann das nächste Problem. Wie kann ich einen Text an dieses MultiEdit schicken, Strings haben ja ebenfalls die 32k-Grenze, und Bereiche erzeugen einen Falschen Dateityp-Fehler.
SetText x&,text$
Hoffe immer noch auf eure Hilfe ;-)
Gruß, Frank
|
| | Datum:12.02.02 09:54 
(sv.sch@freenet.de) | |
Hallo,
schau dir mal die PRFellow-Vorlage prfdemo an, dort ist ein Beispiel.
Sven
|
| | Datum:12.02.02 16:25 
(andreas@andreas-miethe.de) | |
Hallo Frank,
ein Edit-Control kann als Single-Line maximal 32k und als Multi-Line maximal 64k aufnehmen.
Standardmaessig nimmt das Edit 32k auf.
Du kann aber mit EM_SETLIMITTEXT bis auf 64k erhoehen.
SendMesssage(Edit&,EM_SETLIMITTEXT,65535,0)
Den Text kannst Du mit @ReadText oder @Blockread und @SendMessage(Edit&,$000C,0,Bereich#) ins Edit-Control bringen.
Wenn 64k nicht reichen dann musst Du auf das Richedit-Control zugreifen, das waere fuer mich auch immer die erste Wahl, da mehr Moeglichkeiten zur Manipulation zur Verfuegen stehen.
Hier mal ein kleines Beispiel:
Declare rtf&,hdll&
Declare Datei$,Datei#
SetTrueColor 1
CLS RGB(192,192,192)
Let hdll&=UseDll("Riched32.dll")
Let rtf&=Control("RichEdit","",$563000C4,0,0,0,0,%hwnd,1000,%HInstance,$200)
UseFont "Arial",16,0,0,0,0
@sendmessage(rtf&,$30,%font,1) 'Font setzen
SendMessage(rtf&,1077,0,65535) 'Standard 32K-Grenze hochsetzen
SetWindowpos rtf& = 10,10-500,300
Datei$ = "C:\\autoexec.bat"
Dim Datei#,Filesize(Datei$)+10
ReadText Datei#,Datei$
@SendMessage(rtf&,$000C,0,Datei#)
Waitinput
Waitinput
Dispose Datei#
DestroyWindow(rtf&)
Freedll hdll&
End
Gruss
Andreas
|
| | Datum: 12.02.02 16:50 
(frankabbing@12move.de) | |
Hallo.
Vielen Danke, Leute!
Ich werde eure Ratschläge ausgiebig testen.
Gruß und Dank,
Frank
|
|
|