RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Ich glaube er meint z.b. das Example "RichEdit_Example_ViewRTFCode.pb"
Dort löscht dein Macro mcDoubleText() das zweite RichEdit und füllt es neu.
Somit wird der Cursor ans Ende gesetzt.
Dort löscht dein Macro mcDoubleText() das zweite RichEdit und füllt es neu.
Somit wird der Cursor ans Ende gesetzt.
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Hallo Thomas,
ich möchte nochmal auf meine Frage vom 17.07.14 zurückkommen, auf die ich bisher leider noch keine Antwort erhalten habe. Es geht darum, dass beim Einbinden von Bildern der RT-Inhalt verstümmelt wird.
Ich würde mich freuen, wenn's dafür doch noch eine Lösung gäbe!
Gruß, kwp
ich möchte nochmal auf meine Frage vom 17.07.14 zurückkommen, auf die ich bisher leider noch keine Antwort erhalten habe. Es geht darum, dass beim Einbinden von Bildern der RT-Inhalt verstümmelt wird.
Ich würde mich freuen, wenn's dafür doch noch eine Lösung gäbe!
Gruß, kwp
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Das Beispiel habe ich zwar nicht gemeint, aber der Effekt ist der gleiche. Wie ich jetzt leider festgestellt habe kommt das aber nicht von RichEdit, sondern vom Standard PureBasic EditorGadget, welches ja für RichEdit verwendet worden ist._JON_ hat geschrieben:Ich glaube er meint z.b. das Example "RichEdit_Example_ViewRTFCode.pb"
Dort löscht dein Macro mcDoubleText() das zweite RichEdit und füllt es neu.
Somit wird der Cursor ans Ende gesetzt.
Hier nochmals, was ich meine, ob RichEdit oder EditorGadget ist egal. Das Gadget mit Text füllen und dann außerhalb des Gadgets klicken, so dass der Focus verloren wird. Wenn man dann direkt in den Text des Gadgets klickt, ohne vorher das Fenster zu aktivieren, so erscheint der Cursor nicht an der angeklickten Stelle, sondern an der Stelle, wo zuvor der Focus verloren wurde. Wie schaffe ich es, dass der Cursor an der richtigen Stelle erscheint?
Gruß
Uli
PureBasic 5.31 (x32, x64) Windows 7 SP1 (x64)
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Ich nehme mal an, das der Info-Header fehlt, der bei Dateien erforderlich ist. Bei geladenen Bilder ist dieser nicht erforderlich.kwp hat geschrieben:Es geht darum, dass beim Einbinden von Bildern der RT-Inhalt verstümmelt wird.
Aber wie Du den Info-Header, ohne das Bild zu zerstören, in die RTF bekommst, kann ich Dir nicht sagen. Wirst wohl selber
einen schreiben müssen, aber wie dieser wiederum zu RTF wird, kann ich Dir auch nicht sagen.
Mit anderen Worten, ich kann Dir nicht helfen.
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
das scheint mir ein Standard-Verhalten zu sein. Kann man auch mit zwei Wordpad-Fenstern ausprobieren. Hat also nichts mit Thomas' Code zu tun.Cebu-Uli hat geschrieben:Wenn man dann direkt in den Text des Gadgets klickt, ohne vorher das Fenster zu aktivieren, so erscheint der Cursor nicht an der angeklickten Stelle, sondern an der Stelle, wo zuvor der Focus verloren wurde.
Wie Thomas schon geschrieben hat: Wenn das Gadget den Focus verliert, merkst Du Dir die Cursorposition. Wenn es den Focus wieder bekommt, setzt Du den Cursor auf die gemerkte Position.Cebu-Uli hat geschrieben:Wie schaffe ich es, dass der Cursor an der richtigen Stelle erscheint?
Grüße ... Peter
Hygge
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Wenn das bei Wordpad Standard ist, so ist das auf alle Fälle ziemlich nervig, wenn man oft von einem Fenster in das andere wechseln muss. Wenn du das Gleiche mit zwei normalen Edit-Fenstern (von Windows) ausprobierst, so wirst du dort dieses Verhalten nicht finden!Kiffi hat geschrieben:das scheint mir ein Standard-Verhalten zu sein. Kann man auch mit zwei Wordpad-Fenstern ausprobieren. Hat also nichts mit Thomas' Code zu tun.Cebu-Uli hat geschrieben:Wenn man dann direkt in den Text des Gadgets klickt, ohne vorher das Fenster zu aktivieren, so erscheint der Cursor nicht an der angeklickten Stelle, sondern an der Stelle, wo zuvor der Focus verloren wurde.
Eben nicht. Es ist genau umgekehrt! Hier der funktionsfähige Codeausschnitt für das RichEdit_Example.pb :Kiffi hat geschrieben:Wie Thomas schon geschrieben hat: Wenn das Gadget den Focus verliert, merkst Du Dir die Cursorposition. Wenn es den Focus wieder bekommt, setzt Du den Cursor auf die gemerkte Position.Cebu-Uli hat geschrieben:Wie schaffe ich es, dass der Cursor an der richtigen Stelle erscheint?
Code: Alles auswählen
Case #PB_Event_Gadget
Select EventGadget()
Case Edit\GetID()
If EventType() = #PB_EventType_Change; wird vom normalem EditorGadget nicht unterstützt
SetStatusbarText()
DisableToolBarButton(0, #mnu_Undo, Edit\CanUndo() ! 1)
UpdateToolbar()
EndIf
;Cursorposition beim Erhalten des Focus merken
If EventType() = #PB_EventType_Focus
X = WindowMouseX(0) - GadgetX(Edit\GetID())
Y = WindowMouseY(0) - GadgetY(Edit\GetID())
EndIf
;Cursorposition beim Verlust des Focus wiederherstellen
If EventType() = #PB_EventType_LostFocus
SetActiveGadget(Edit\GetID())
Edit\SetCursorPos(X,Y)
Edit\SetCursorPos(X,Y)
EndIf
EndSelect
Uli
PureBasic 5.31 (x32, x64) Windows 7 SP1 (x64)
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Leider habe ich mich selber verarscht. Die Lösung oben funktioniert wunderbar, bei einem RichEdit-Gadget. Bei mehreren Gadgets im selben Programm hingegen klappt das nicht, da ich beim Verlust des Focus diesen einfach wieder setze. Aber anders funktionierte es gar nicht. Vielleicht kennt ja doch jemand eine Lösung?
Gruß
Uli
Gruß
Uli
PureBasic 5.31 (x32, x64) Windows 7 SP1 (x64)
- AndyMars
- Beiträge: 139
- Registriert: 08.09.2004 11:59
- Computerausstattung: Win10 Home 64bit, i7-2600k @ 3.4 GHz, 8GB RAM, AMD Radeon R9 200
- Wohnort: Zürich, Schweiz
- Kontaktdaten:
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Absolut geiles Stück Code! Bin schon fast etwas neidisch über das Können, welches
dahinter steckt... Aber jetzt hat ja mein PureBasic auch so eine RichEdit-Komponente mit so vielen
Funktionen - astrein...
Hab mir gleich erlaubt den PurePad-Example-Code zu klauen und
um eine Funktion zu erweitern, welche automatisch Daten aus der Zwischenablage zusammen fügt. Sehr
fein, um Artikel im Internet zu sammeln...
Wen es interessiert: EXE & Quellcode...
Und nicht wundern, mein Beitrag an das Programm ist minimal, dieser kleine Toggle-Paste-Button sieht man kaum...
dahinter steckt... Aber jetzt hat ja mein PureBasic auch so eine RichEdit-Komponente mit so vielen
Funktionen - astrein...
Hab mir gleich erlaubt den PurePad-Example-Code zu klauen und
um eine Funktion zu erweitern, welche automatisch Daten aus der Zwischenablage zusammen fügt. Sehr
fein, um Artikel im Internet zu sammeln...
Wen es interessiert: EXE & Quellcode...
Und nicht wundern, mein Beitrag an das Programm ist minimal, dieser kleine Toggle-Paste-Button sieht man kaum...
Zuletzt geändert von AndyMars am 14.09.2017 11:28, insgesamt 1-mal geändert.
RichEdit Funktionen (OOP): Anpassung an PureBasic 5.50
Hat schon jemand RichEdit.pbi erfolgreich an PureBasic 5.50 angepasst?
Die Konstanten, die nun schon deklariert sind, habe ich angepasst, was muss ich noch beachten?
Ich bekomme nur noch Zeichensalat.
Was muss ich bezüglich der in PB 5.50 nicht mehr vorhandenen internen ASCII-Zeichenbehandlung beachten?
Vielen Dank für jede Hilfe
Andreas
Die Konstanten, die nun schon deklariert sind, habe ich angepasst, was muss ich noch beachten?
Ich bekomme nur noch Zeichensalat.
Was muss ich bezüglich der in PB 5.50 nicht mehr vorhandenen internen ASCII-Zeichenbehandlung beachten?
Vielen Dank für jede Hilfe
Andreas
Re: RichEdit Funktionen (OOP): Jetzt mit ImageSupport
Hallo
Der Download-Link für RichEdit.pbi in Posting 1 ist leider offline.
Gibt es irgendwo einen alternativen Link ?
Grüße
Lite
Der Download-Link für RichEdit.pbi in Posting 1 ist leider offline.
Gibt es irgendwo einen alternativen Link ?
Grüße
Lite