AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Text in Richedit anklicken

Ein Thema von XXcD · begonnen am 12. Jul 2009 · letzter Beitrag vom 14. Jul 2009
Antwort Antwort
Seite 2 von 4     12 34      
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#11

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 13:36
Hi,

Wenn dein String so aussieht "Mustermann: test text bla bla" dann prüfe doch mit Pos(':', String) wo der erste Doppelpunkt ist und alles von 1 bis dahin ist dann der Name. Dazu solltest du dann nur vermeiden das man im Namen auch Doppelpunkte verwenden kann aber das sollte ja kein Problem sein.


Gruß
Stormy
  Mit Zitat antworten Zitat
Benutzerbild von XXcD
XXcD

Registriert seit: 19. Sep 2006
581 Beiträge
 
Delphi 2007 Professional
 
#12

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 13:39
Jo gute Idee dann mache ich das so.
Kann ich denn auch irgendwie rausfinden mir mousemove in welcher Zeile die maus gerade ist?
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#13

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 13:50
Wenn du den String hast über dem deine Maus ist dann kannst du mit
JvRichEdit1.Lines.IndexOf(DEIN_STRING) feststellen welcher Zeilenindex das ist.


Gruß
Stormy
  Mit Zitat antworten Zitat
Benutzerbild von XXcD
XXcD

Registriert seit: 19. Sep 2006
581 Beiträge
 
Delphi 2007 Professional
 
#14

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 13:54
Ich habe ein Problem damit rauszufinden in welcher Zeile die Mausgerade ist.
Habs so probiert geht aber nur wenn ich geklickt habe:
Zeile := JvRichEdit1.CaretPos.y;

Ich brauche das aber bei move.
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#15

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:07
Ja habe ich dir doch in meinem vorherigen Post schon beantowrtet wie du das machen kannst.


Gruß
Stormy
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#16

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:13
Hallo,


Zitat von XXcD:
Ich brauche das aber bei move.
in dem Tipp von den Schweitzern Link findest du die Prozedur GetWord(...)
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#17

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:23
Keine Ahnung ob es geht oder ob es das ist was du wolltest aber hab deinen Code mal etwas abgeändert.

Delphi-Quellcode:
var Test : TSize;
    Rect1 : TRect;
    TextHoehe : Integer;
    Zeile : Integer;
    Text1 : String;
begin
for Zeile := 1 to JvRichEdit1.Lines.Count do
begin //Zeile in der der Text steht (Index der Linesliste +1 des RichEdits)
Text1 := 'Hi'; //Text, der angeklickt werden soll
GetTextExtentPoint32(GetDC(JvRichEdit1.Handle), PChar(Text1), Length(Text1), Test); //WinApi Funktion, welche die Höhe und die Breite des Textes ausgibt
TextHoehe := -JvRichEdit1.Font.Height; //Höhe der Schrift allgemein
Rect1 := Rect(0,(Zeile-1)*TextHoehe,Test.cx,Zeile*TextHoehe + Test.cy); //Bereich festlegen, wo der Text ist, dabei sit vorausgesetz das der Text immer vorne steht
if (y >= Rect1.Top) and (y+TextHoehe <= Rect1.Bottom) and (x <= Rect1.Right) then //Überprüfung ob die Mouse in Rect (speicher am besten x,y von MouseMove und setze
//die Variable für X und Y ein, wenn du die Anweisung hier in DbClick einfügst
begin
//hier der Code, wenn die Mouse auf dem Text ist.
//z.b.
JvRichEdit1.SelStart := 0;
JvRichEdit1.SelLength := Length(Text1);
if not (fsUnderline in JvRichEdit1.SelAttributes.Style) then
begin
JvRichEdit1.SelAttributes.Style := JvRichEdit1.SelAttributes.Style + [fsUnderline];
end;
JvRichEdit1.Cursor:=crHandpoint;
Caption := IntToStr(Zeile); // die Zeile über der die Maus ist
break;
end
else
begin
//und hier schreibste rein wie er normal aussehen soll.
//z.b.
JvRichEdit1.SelStart := 0;
JvRichEdit1.SelLength := Length(Text1);
if fsUnderline in JvRichEdit1.SelAttributes.Style then
begin
JvRichEdit1.SelAttributes.Style := JvRichEdit1.SelAttributes.Style - [fsUnderline];
JvRichEdit1.Cursor:=crDefault;
end;
end;
end;
end;
Edit: man könnte den auch mal etwas anschaulicher Formatieren (Styleguide)


Gruß
Stormy
  Mit Zitat antworten Zitat
Benutzerbild von XXcD
XXcD

Registriert seit: 19. Sep 2006
581 Beiträge
 
Delphi 2007 Professional
 
#18

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:36
Ja aber das ist wieder das problem dafür müsste ich wissen was in der zeile steht das weiß ich ja nicht.
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#19

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:49
Was genau geht denn jetzt nicht? Ich kann dir gerade nicht folgen und im Code steht doch alles drinne
was du brauchst oder verstehe ich was falsch?
  Mit Zitat antworten Zitat
Benutzerbild von XXcD
XXcD

Registriert seit: 19. Sep 2006
581 Beiträge
 
Delphi 2007 Professional
 
#20

Re: Text in Richedit anklicken

  Alt 13. Jul 2009, 14:54
Das Problem ist ich schreibe einen Chat und in jeder Zeile steht ein Name davor.
Natürlich nicht in jeder Zeile der selbe. In Jeder Zeile soll der Name gehighlightet werden.
Wenn das erstmal geschafft ist kann man ja auch ganz einfach einen Code darauf setzen, also beim anklicken.
Und das ist das Problem ich muss ja individiuell herausfinden was der Name ist und dann herausfinden wenn man mit der Maus darüber ist.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz