Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Spezielles Für die Bereiche API, Subclassing, Inline-Assembler, Prozesse, ect.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26915, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3326, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 312, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7643, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 23, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 58, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 146, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 71, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50944, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29.09.2010, 06:16   #1 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.877
Lächeln Cursorzeile farbig in einem Edit

Eine Frage an die Editorschreiber (Frank und Andreas)
In euren XProfan-Editoren kann man die Cursorzeile farbig hervorheben.
Welche API oder Procedur macht es möglich, die Zeile in einem Richedit farbig zu gestalten, in der sich grade der Cursor befindet ?
Bei der Hilfe denkt dran: alter Mann und von API soviel Ahnung "wie 'ne Kuh vom Stabhochsprung !"
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 29.09.2010, 06:34   #2 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Der Editor verwendet kein Richedit, sondern ein Scintilla-Edit, das zu normalen Edits nahezu kompatibel ist, aber in den Funktionen ungleich mächtiger. Ich glaube nicht, dass ein Richedit diese Funktion bietet. Da wirst du dann wohl subclassen müssen.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 29.09.2010, 18:02   #3 (Direktlink)
Unregistriert
Gast
 
Beiträge: n/a
Standard

Hallo Horst,

Mein Editor benutzt weder ein Richedit noch Scintilla, wieder was anderes.

Mit dem Richedit geht es zwar auch ist aber alles andere als einfach.

Ein kleines Beispiel dazu.
Dort wird nicht weiter auf den benutzen Font ( in einer Zeile können sich ja verschiedene Fonts befinden), und Textposition ( wird im Beispiel immer bei 1 anfangen ) eingegangen. Das müsste also auch noch berücksichtigt werden. Das ganze wird sich also noch komplizierter gestalten.
Und das ist nur das Einfärben.
In der Hauptschleife bzw. SubClassProc muss permanent die Zeile abgefragt werden, und zwar nicht nur die aktuelle sondern auch die vorherige. Die müssen ja beide eingefärbt werden.

Gruss
Andreas

Code:
$H Windows.ph
$H Structs.ph
$H Messages.ph

Struct Rect = ~Rect
Struct TM   = ~TEXTMETRIC

CLS
Var RE& = Create("RichEdit",%hwnd,"",0,0,300,300)
Settext Re&,"Ein Klick ins Fenster\nsollte die zweite Zeile färben\nund ieder zurück !"
Waitinput
selectLine(RE&,1,$0000FF,$00FFFF)
Waitinput
selectLine(RE&,1,$FFFFFF,$0)
Waitinput
End

Proc SelectLine
  Parameters RichEdit&,SelectedLine&,BackColor&,TxtColor&
  Var Text$ = Space$(4095)
  Var s$ = ""
  Var R# = new(RECT)
  Var R1# = new(RECT)
  Var WLine& = 0
  Var HLine& = 0
  Var TM# = New(TM)
  Var DC& = ~GetDC(Richedit&)
  Var Brush& = ~CreateSolidBrush(BackColor&)
  SendMessage(Richedit&,~EM_GETLINE,SelectedLine&,Addr(Text$))
  Text$ = Trim$(Text$)
  SendMessage(Richedit&,~EM_GETRECT,0,R#)
  WLine& = Int(R#.Right&-R#.Left&+1)
  ~GetTextMetrics(DC&,TM#)
  HLine& = Int(tm#.tmHeight& + tm#.tmExternalLeading&)
  ~SetRect(R1#,0,Int(SelectedLine&*HLine&),Int(WLine&+1),Int((SelectedLine&+1)*HLine&+1))
  ~FillRect(DC&,r1#,Brush&)
  ~SetBkMode(DC&,~TRANSPARENT)
  ~SetTextColor(DC&,TxtColor&)
  ~TextOut(DC&,0,Int(SelectedLine&*HLine&+1),addr(text$),Len(text$))
  ~DeleteObject(Brush&)
  Dispose R#,R1#,TM#
EndProc
  Mit Zitat antworten
Alt 30.09.2010, 08:49   #4 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.877
Blinzeln

@Andreas (wieso unregistriert ?)
In deinen Code werde ich mich jetzt einmal "verbeissen" !
Danke
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Quell-Code farbig ausdrucken pitter Helfer & Tools 11 24.02.2010 14:22
Zellen farbig in Word hinterlegen patrick85 Office-Anwendungen 5 14.12.2009 15:45
Tipp der Woche: Windows-Ordner farbig markieren Info Info: CB Spiele 0 22.07.2009 17:40
kann man bei thunderbird posteingänge farbig hervorheben las blauelfe Browser, eMail und Messenger 12 23.02.2008 11:41
Word: Farbig markierten Texten eine andere Farbe geben? =Skippy= Office-Anwendungen 4 25.02.2007 13:50



Alle Zeitangaben in WEZ +2. Es ist jetzt 06:08 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2