Seite 2 von 3
Verfasst: 27.08.2006 14:26
von Eckhard.S
@ts-soft
Unter
http://ts-soft.eu/ steht
Achtung: Libraries und Tools für PB stehen nicht mehr öffentlich zur Verfügung! Evtl. wirds hier bald einen geschlossenen Bereich geben.
Die pbosl hatte ich mir aber anscheinend schon mal woanders runtergeladen und jetzt richtig einkopiert. Und es klappt!
Ich sehe nun
"Feel the ..Pure.. Power" im Splitscreen.
Wie geht es weiter? Was kann denn der Scintilla?
Kann ich da den Text: "Dies ist ein
ROTES Wort" darstellen?
Verfasst: 27.08.2006 14:39
von Kaeru Gaman
> Achtung: Libraries und Tools für PB stehen nicht mehr öffentlich zur Verfügung! Evtl. wirds hier bald einen geschlossenen Bereich geben.
wtf.. hey, thomas, was geht da ab...?
ich hab mir nicht dauernd das neueste gezogen, weil ich davon ausgegangen bin, dass es weiterhin zur verfügung steht....
Verfasst: 27.08.2006 14:43
von DarkDragon
Kaeru Gaman hat geschrieben:> Achtung: Libraries und Tools für PB stehen nicht mehr öffentlich zur Verfügung! Evtl. wirds hier bald einen geschlossenen Bereich geben.
wtf.. hey, thomas, was geht da ab...?
ich hab mir nicht dauernd das neueste gezogen, weil ich davon ausgegangen bin, dass es weiterhin zur verfügung steht....
Jo wegen nen paar Usern ... . Ich hätte mich auch fast dafür entschieden alles ausm Showcase zu nehmen, zum Glück gibts jetzt aber die Option, dass das Sternchenwählen aus ist.
Verfasst: 27.08.2006 14:44
von edel
Eckhard.S hat geschrieben:
Wie geht es weiter? Was kann denn der Scintilla?
Kann ich da den Text: "Dies ist ein ROTES Wort" darstellen?

Verfasst: 27.08.2006 15:27
von ts-soft
Eckhard.S hat geschrieben:@ts-soft
Unter
http://ts-soft.eu/ steht
Achtung: Libraries und Tools für PB stehen nicht mehr öffentlich zur Verfügung! Evtl. wirds hier bald einen geschlossenen Bereich geben.
der Link steht nicht in meiner Signatur

, sondern zu PBOSL
Eckhard.S hat geschrieben:
Die pbosl hatte ich mir aber anscheinend schon mal woanders runtergeladen und jetzt richtig einkopiert. Und es klappt!
Ich sehe nun
"Feel the ..Pure.. Power" im Splitscreen.
Wie geht es weiter? Was kann denn der Scintilla?
Kann ich da den Text: "Dies ist ein ROTES Wort" darstellen?
Wie bereits mehrmals geschrieben, Scintilla richtig nutzen erfordert etwas
Erfahrung und Nachforschen, durch Nachfragen in diesem Forum wird das
nichts, das Thema ist zu Komplex. Es gibt bereits ein paar Beispiele im
engl. Forum, ein paar habe ich beigefügt, durch die Include-Datei stehen
alle Scintilla, sowie SciLexxer Funktionen zur Verfügung, fehlt evtl. noch
die Original engl. Docu von
www.scintilla.org
Desweiteren gibts noch den Source von jaPBe, aber ich denke dort die
richtigen Passagen zu finden ist noch aufwendiger.
Noch einfacher wirds nicht, also mach was einfacheres oder lerne
>> Was kann denn der Scintilla?
Guck Dir die IDE zu PureBasic an, oder jaPBe

Verfasst: 27.08.2006 15:47
von Eckhard.S
OK! Ich versuche es mal anders, was mir völlig genügen würde:
Gibt es denn für meine einfache Anwendung "Dies ist ein
ROTER Text"?
einen passenden SendMessage Befehl, der im folgenden einfachen

Code den Text rot macht anstatt markiert?
Code: Alles auswählen
OpenWindow(0, 0, 0, 200, 50, "Text markieren", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
EditorGadget(0, 0, 0, 199, 49)
AddGadgetItem(0,0,"Dies ist ein ROTER Text")
Repeat
SendMessage_(GadgetID(0), #EM_SETSEL, $000000D, $0000012) ;setzt den Cursor
SetActiveGadget(0)
Until WaitWindowEvent() = #PB_Event_CloseWindow
Verfasst: 27.08.2006 16:01
von ts-soft
Lies die Doku, ansonsten kommen noch 1000nde von Fragen
Code: Alles auswählen
XIncludeFile #PB_Compiler_Home + "Includes\Scintilla_Include.pbi"
OpenWindow(0, 0, 0, 200, 50, "Text markieren", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
If InitSciEdit()
SciEditGadget(0, 0, 0, 199, 49)
Else
Debug "Fehler"
End
EndIf
;AddGadgetItem(0,0,"Dies ist ein ROTER Text")
SetGadgetText(0, "Dies ist ein ROTER Text")
Repeat
SendMessage_(GadgetID(0), #EM_SETSEL, $000000D, $0000012) ;setzt den Cursor
SCI_SetSelFore(0, 1, $020BFD)
SetActiveGadget(0)
Until WaitWindowEvent() = #PB_Event_CloseWindow
AddGadgetItem ist nicht integriert, weils für Scintilla nicht so sinnvoll ist.
SetGadgetText ist nur drinnen, damit auch Einsteiger es wenigstens nutzen können. Einige wenige Messages für RichEdit funktionieren hier auch, wie Du an Deinem SendMessage_ siehst, aber normallerweise bitte die SCI_.... Funktionen, so wie sie in der Documentation zu Scintilla beschrieben sind nutzen!
PS: Durch das SendMessage wird das Scintilla Contol aber unbrauchbar, mußte also die Passende Message noch austauschen
Ich hab gerade keine Zeit

// Nachtrag:
Kann sowieso im EventLoop nicht funktionieren

Verfasst: 27.08.2006 19:08
von Eckhard.S
ts-soft hat geschrieben:// Nachtrag:
Kann sowieso im EventLoop nicht funktionieren

Schade, dann klappte es so nicht. Vielen Dank für deinen Einsatz und vor allem deine Geduld
Mich in so ein Monster einzuarbeiten, das macht (noch) keinen rechten Sinn. Wenn es eine Lösung gäbe, dann könnte ich diese adaptieren auf "Das ist ein
roter und
grüner Text".
Aber so bleibt der Text mal vorerst einfarbig. Da kann man auch gut mit leben.
Verfasst: 27.08.2006 19:21
von ts-soft
Scintilla ist für Syntashighlightning, nicht zum einfärben willkürlicher Wörter,
das kannste auch mit dem EditorGadget. Mußte aber jetzt selber raussuchen,
weil ich brauche dafür auch eine gewisse Zeit.
Verfasst: 27.08.2006 19:52
von Eckhard.S
Ja, das war dann wohl der falsche Ansatz. Eine Lösung habe ich ja schon mal zusammengetragen:
http://www.purebasic.fr/german/viewtopic.php?t=9581
Und dass sich auch zumindest ein anderer über die Möglichkeit gefreut hat, sieht man dort.
Ich hatte gehofft, jemand hat noch vielleicht ein passendes SendMessage im Zauberhut.
Warten wir's mal ab, es gibt ja noch andere "Bastler" unter dem Himmel, die einen unverhofft überraschen.