Avatar billede cautoo Nybegynder
16. juli 2001 - 11:46 Der er 23 kommentarer og
4 løsninger

Formateret tekst (haster lidt)

Jeg vil gerne bruge en kommando noget alla
richedit1.lines.add(\'Tekst indsat\');

den skulle så gerne komme ud med en eller anden form for tekstformatering eks. rød tekst uden at det ovenstående bliver rødt og sådan at brugeren kan skrive videre uden tekstformateringen

hvordan gør man det????
Avatar billede borrisholt Novice
16. juli 2001 - 11:48 #1
Det klart nemmeste er at vælge teksten og så formatere det valgte tekst ...

Jens B
Avatar billede cautoo Nybegynder
16. juli 2001 - 11:50 #2
!!!!!!!!
Avatar billede cautoo Nybegynder
16. juli 2001 - 11:50 #3
har du også en løsning til hvordan man kan gøre den ordentligt via en kommando??
Avatar billede martinlind Nybegynder
16. juli 2001 - 11:52 #4
Du kan se det hele i deomos/RichEdit det er et eks. hvor du kan se hvordan du gør, du skal havde fat i SelAttributes eller noget i den stil, kan ikke lige huske præcis hvad den hed.

/Martin
Avatar billede dj Nybegynder
16. juli 2001 - 11:54 #5
procedure TFrmMain.Addtext(text: string; color: integer);
begin
  if mymemo.lines.Count>300 then begin
    mymemo.lines.delete(0);
  end;
  mymemo.selstart:=length(mymemo.text);
  mymemo.selattributes.Color:=color;
  mymemo.lines.Add(\'[\'+copy(timetostr(Time),0,5)+\'] \'+text);
end;

Noget lign. ovenstående plejer jeg at gøre.

/_DJ_
Avatar billede cautoo Nybegynder
16. juli 2001 - 11:56 #6
har prøvet med:

function TForm1.CurrText: TTextAttributes;
begin
  if Richedit1.SelLength > 0 then Result := Richedit1.SelAttributes
  else Result := Richedit1.DefAttributes;
end;

procedure TForm1.RichEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  selpos: Integer;
begin
  if Key = VK_Return then
  begin
    billede := \'11\';
    kommando.text := richedit1.Lines[Richedit1.Lines.Count - 1];
    Kommando.CharCase := ecUpperCase;
    SelPos := Pos(\'(\', kommando.Text);
    if selpos > 0 then
    begin

    end
    else
    begin
      if Kommando.text = \'HJÆLP\' then
      begin

      end
      else
      begin
        CurrText.Style := CurrText.Style + [fsItalic];
        Richedit1.lines.Add(\'Fejl i kommando\');
        CurrText.Style := CurrText.Style - [fsItalic];

      end;
    end;
  end;
end;

men så er der ikke noget formateret tekst
Avatar billede borrisholt Novice
16. juli 2001 - 11:56 #7
dj>> Lidt et hack, men det virker ....

Jens B
Avatar billede zerohero Nybegynder
16. juli 2001 - 11:59 #8
with richedit1 do
begin
  selstart := x; //positionen hvor din selected text skal begynde
  sellength := length(tekst); //længden af den ønskede selected text
  selattributes.color := clred;
end;

ZeroHero
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:00 #9
dj> hvordan stopper man så farven igen efter indsættelse
Avatar billede borrisholt Novice
16. juli 2001 - 12:03 #10
dj>

Gemmer den gamle farve først :

procedure TFrmMain.Addtext(text: string; color: integer);
var
  OldColor : TColor;
begin
  if mymemo.lines.Count>300 then
    mymemo.lines.delete(0);

  mymemo.selstart:=length(mymemo.text);
  OldColor :=  mymemo.selattributes.Color;
  mymemo.selattributes.Color:=color;
  mymemo.lines.Add(\'[\'+copy(timetostr(Time),0,5)+\'] \'+text);
  mymemo.selattributes.Color:=OldColor;
end;

Jens B
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:03 #11
og kan du også give nogle eks. på hvis jeg nu vil have teksten fed kursiv eller understreget. En anden størrelse eller som punktliste???
Avatar billede zerohero Nybegynder
16. juli 2001 - 12:08 #12
with richedit1 do
begin
  selstart := x; //positionen hvor din selected text skal begynde
  sellength := length(tekst); //længden af den ønskede selected text
  selattributes.color := clred; //rød tekst
  selattributes.style := [fsbold]; //fed tekst
  selattributes.style := [fsitalic]; //kursiv tekst
  selattributes.size := x; //Størrelse på tekst
end;
Avatar billede borrisholt Novice
16. juli 2001 - 12:09 #13
zerohero >>
  Etv.

selattributes.style := selattributes.style + [fsbold, fsitalic ];

eller bare

selattributes.style :=  [fsbold, fsitalic];

Jens B
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:11 #14
tak men hvad med punktopstilling?
Avatar billede borrisholt Novice
16. juli 2001 - 12:15 #15
kig på RichEdit1.Paragraph ...

cautoo  >> Lige et spørgsmål : Har du ikke instaleret de demod der fulgte med til din Delphi ?

Jens B
Avatar billede zerohero Nybegynder
16. juli 2001 - 12:16 #16
Punktopstilling!!! det tror jeg ikke du kan gøre på via selattributes...

ZeroHero
Avatar billede zerohero Nybegynder
16. juli 2001 - 12:17 #17
Borrisholt>> Jeg mangler din hjælp... Kan du huske det vi snakkede om over telefonen? Kig lige på mit spørgsmål \"wm_paint\"...
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:18 #18
borrisholt>> Joda, men jeg synes ikk jeg kunne få:

Richedit1.selattributes.Paragraph.Numbering til at virke!!!
Avatar billede zerohero Nybegynder
16. juli 2001 - 12:21 #19
Avatar billede borrisholt Novice
16. juli 2001 - 12:23 #20
cautoo >> Nu har jeg D6 instaleret på mit d drev, men du må selv rette til i forhold til din instalation ...

Her ligger der et godt eksempel på hvordan man bruger en richEdit ...
D:\\PROGRAM FILES\\BORLAND\\Delphi6\\Demos\\RichEdit

ellers er der jo altid F1 (du ved hjælpen)

Gør som jeg sagde : brug RichEdit1.Paragraph IKKE Richedit1.selattributes.Paragraph.Numbering

Jens B
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:24 #21
den er da ikk som mulighed på listen
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:26 #22
og den vil heller ikke kompilere det
Avatar billede cautoo Nybegynder
16. juli 2001 - 12:27 #23
nåh sorry dumfejl tak for hjælpen
Avatar billede martinlind Nybegynder
16. juli 2001 - 13:35 #24
Takker :)
Avatar billede dj Nybegynder
16. juli 2001 - 14:41 #25
Skal lige siges at min løsning er mest anvendelig hvis det er en log af en eller anden slags man laver, f.eks. til at vise status i en FTP Client, IRC Client eller lign. Hvis det er til tekstbehandling ville jeg nok ikke anvende min løsning.

/_DJ_
Avatar billede cautoo Nybegynder
17. juli 2001 - 10:25 #26
dj>> så er det jo heldigt at jeg skal bruge det til hvis brugeren skriver en eller anden kommando så svarer den med forskellige muligheder for hvad der kan være galt :-)
Avatar billede dj Nybegynder
17. juli 2001 - 12:50 #27
:)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester