AGB  ·  Datenschutz  ·  Impressum  







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

Smilies im Chat??

Ein Thema von Tobiax · begonnen am 22. Jul 2006 · letzter Beitrag vom 23. Jul 2006
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von Tobiax
Tobiax

Registriert seit: 13. Jul 2006
83 Beiträge
 
Delphi 2005 Architect
 
#21

Re: Smilies im Chat??

  Alt 23. Jul 2006, 10:44
KK erst mal danke für den Code aber wie füge ich den ein letzte Frage

Dank Danke Danke!!!!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#22

Re: Smilies im Chat??

  Alt 23. Jul 2006, 10:45
Zitat von Tobiax:
KK erst mal danke für den Code aber wie füge ich den ein letzte Frage

Dank Danke Danke!!!!
Diese Frage verstehe ich nicht
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Tobiax
Tobiax

Registriert seit: 13. Jul 2006
83 Beiträge
 
Delphi 2005 Architect
 
#23

Re: Smilies im Chat??

  Alt 23. Jul 2006, 10:57
Wie füge ich jetzt deinen Code in den ein?
Code:
procedure TMainForm.BildEinfuegen(var Bilder: TImageList; const ImageIndex: integer);
var
  bitmap: TBitmap;
begin
  Bitmap := TBitmap.Create;
  try
    Bilder.GetBitmap(ImageIndex,Bitmap);
    REEmpfangen.InsertGraphic(Bitmap,false); //REEmpfangen = JvRichEdit
    with REEmpfangen.GetSelection do REEmpfangen.SetSelection(cpMin + 1, cpMin + 1, False);
  finally
    bitmap.Free;
  end;
end;

procedure TMainForm.SucheSmiley(const Smiley: string; ImageIndex: integer; Liste: TImageList);
var
  FoundAt: LongInt;
  StartPos, ToEnd: Integer;
begin
with REEmpfangen do
  begin
    if SelLength <> 0 then StartPos := SelStart + SelLength
    else StartPos := 0;
    ToEnd := Length(Text) - StartPos;
    FoundAt := FindText(Smiley, StartPos, ToEnd, []);
    if FoundAt <> -1 then
    begin
      SetFocus;
      SelStart := FoundAt;
      SelLength := Length(Smiley);
      BildEinfuegen(Liste, ImageIndex);
    end;
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#24

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:01
Zitat von Tobiax:
Hi Sko der Code ist gut aber was haben die proceduren Bildeinfügen und SucheSmily zu tun sind das nochmal Extra Sachen? und wie kann ich zb. grinz = Very Happy Einstelllen?



mfg.Tobiax
Also, ich hab in meinem Programm eine Imagelist mit dem Namen "Smileys" in der die Bilder drin sind. Wenn eine Nachricht kommt rufe ich die Prozedur SucheSmiley auf, z. B. so: SucheSmiley(':)',0, Smileys); Diese Prozedur sucht den entsprechenden String (hier ), löscht ihn und ruft die Prozedur Bildeinfuegen auf, die an diese Position dann den entsprechenden Smiley setzt(hier das Bild mit dem Index 0 aus der Imagelist "Smileys". Bei mir sieht das im ganzen dann so aus:
Delphi-Quellcode:
for i := 0 to 10 do
  begin
    SucheSmiley('*:-D*',0, MainForm.Smileys);
    SucheSmiley('*;-)*',1, MainForm.Smileys);
    SucheSmiley('*evil*',2, MainForm.Smileys);
    SucheSmiley('*cry*',3, MainForm.Smileys);
    SucheSmiley('*cool*',4, MainForm.Smileys);
    SucheSmiley('*shock*',5, MainForm.Smileys);
    SucheSmiley('*thumbup*',6, MainForm.Smileys);
    SucheSmiley('*grübel*',7, MainForm.Smileys);
    SucheSmiley('*angel*',8, MainForm.Smileys);
    SucheSmiley('*idea*',10, MainForm.Smileys);
    SucheSmiley('*->*',11, MainForm.Smileys);
    SucheSmiley('*!*',12, MainForm.Smileys);
    SucheSmiley('*?*',13, MainForm.Smileys);
    SucheSmiley('*freak*',14, MainForm.Smileys);
    SucheSmiley('*stupid*',15, MainForm.Smileys);
    SucheSmiley('*:-S*',16, MainForm.Smileys);
    SucheSmiley('*neutral*',17, MainForm.Smileys);
    SucheSmiley('*wiejetz*',0, MainForm.Smileys_2);
    SucheSmiley('*heuldoch*',1, MainForm.Smileys_2);
    SucheSmiley('*tuichdoch*',2, MainForm.Smileys_2);
  end;
Ist sicher nicht die optimalste Methode, ich bin auch noch Anfänger. Ich hab den ganzen Spass noch in einen Thread ausgelagert, da merkt mans nicht beim Nachrichtenschreiben etc.
MfG Sko
Zitat von Phoenix:
[OT]Phoenix guckt in die Glaskugel, zuckt mit den Flügelspitzen, krächzt etwas von wegen 'Boden' und 'Scherben' und schubbst die Kugel in Richtung Tischkante.[/OT]
Rockbox
  Mit Zitat antworten Zitat
Benutzerbild von Tobiax
Tobiax

Registriert seit: 13. Jul 2006
83 Beiträge
 
Delphi 2005 Architect
 
#25

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:07
OK hab alles Danke!!!!!
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#26

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:23
Hi!
Zitat von Sko:
Diese Prozedur sucht den entsprechenden String (hier ), löscht ihn und ruft die Prozedur Bildeinfuegen auf, die an diese Position dann den entsprechenden Smiley setzt(hier das Bild mit dem Index 0 aus der Imagelist "Smileys". Bei mir sieht das im ganzen dann so aus:
Delphi-Quellcode:
for i := 0 to 10 do
  begin
    SucheSmiley('*:-D*',0, MainForm.Smileys);
    SucheSmiley('*;-)*',1, MainForm.Smileys);
    SucheSmiley('*evil*',2, MainForm.Smileys);
    SucheSmiley('*cry*',3, MainForm.Smileys);
    SucheSmiley('*cool*',4, MainForm.Smileys);
    SucheSmiley('*shock*',5, MainForm.Smileys);
    SucheSmiley('*thumbup*',6, MainForm.Smileys);
    SucheSmiley('*grübel*',7, MainForm.Smileys);
    SucheSmiley('*angel*',8, MainForm.Smileys);
    SucheSmiley('*idea*',10, MainForm.Smileys);
    SucheSmiley('*->*',11, MainForm.Smileys);
    SucheSmiley('*!*',12, MainForm.Smileys);
    SucheSmiley('*?*',13, MainForm.Smileys);
    SucheSmiley('*freak*',14, MainForm.Smileys);
    SucheSmiley('*stupid*',15, MainForm.Smileys);
    SucheSmiley('*:-S*',16, MainForm.Smileys);
    SucheSmiley('*neutral*',17, MainForm.Smileys);
    SucheSmiley('*wiejetz*',0, MainForm.Smileys_2);
    SucheSmiley('*heuldoch*',1, MainForm.Smileys_2);
    SucheSmiley('*tuichdoch*',2, MainForm.Smileys_2);
  end;
Ist sicher nicht die optimalste Methode, ich bin auch noch Anfänger. Ich hab den ganzen Spass noch in einen Thread ausgelagert, da merkt mans nicht beim Nachrichtenschreiben etc.
Warum rufst du denn das ganze 11x auf?

Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#27

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:30
Weil bei jedem Aufruf der Prozedur nur ein Smiley ersetzt wird, und beim testen wurde manchmal mehrmals der gleiche Smiley in eine Nachricht eingefügt, das sah dumm aus wenn der 2 oder 3 erst später ersetzt wurde, daher hab ichs in eine Schleife gepackt. Bin halt Anfänger
MfG Sko
Zitat von Phoenix:
[OT]Phoenix guckt in die Glaskugel, zuckt mit den Flügelspitzen, krächzt etwas von wegen 'Boden' und 'Scherben' und schubbst die Kugel in Richtung Tischkante.[/OT]
Rockbox
  Mit Zitat antworten Zitat
Benutzerbild von Tobiax
Tobiax

Registriert seit: 13. Jul 2006
83 Beiträge
 
Delphi 2005 Architect
 
#28

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:37
Hi Sko hab doch noch eine Frage wo soll ich den erken code einfügen
Code:
SucheSmiley(':)',0, Smileys);
und wo bekomm ich JvRichEdit her ???


Danke nochmal

PS: wo soll ich den einfügen
Code:
for i := 0 to 10 do
  begin
    SucheSmiley('*:-D*',0, MainForm.Smileys);
    SucheSmiley('*;-)*',1, MainForm.Smileys);
    SucheSmiley('*evil*',2, MainForm.Smileys);
    SucheSmiley('*cry*',3, MainForm.Smileys);
    SucheSmiley('*cool*',4, MainForm.Smileys);
    SucheSmiley('*shock*',5, MainForm.Smileys);
    SucheSmiley('*thumbup*',6, MainForm.Smileys);
    SucheSmiley('*grübel*',7, MainForm.Smileys);
    SucheSmiley('*angel*',8, MainForm.Smileys);
    SucheSmiley('*idea*',10, MainForm.Smileys);
    SucheSmiley('*->*',11, MainForm.Smileys);
    SucheSmiley('*!*',12, MainForm.Smileys);
    SucheSmiley('*?*',13, MainForm.Smileys);
    SucheSmiley('*freak*',14, MainForm.Smileys);
    SucheSmiley('*stupid*',15, MainForm.Smileys);
    SucheSmiley('*:-S*',16, MainForm.Smileys);
    SucheSmiley('*neutral*',17, MainForm.Smileys);
    SucheSmiley('*wiejetz*',0, MainForm.Smileys_2);
    SucheSmiley('*heuldoch*',1, MainForm.Smileys_2);
    SucheSmiley('*tuichdoch*',2, MainForm.Smileys_2);
  end;
mfg.Tobiax
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#29

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:40
Hi!

Der Code sollte dahin, wo du eingehende Messages bearbeitest und JvRichedit gehört zu den Jedis:
http://www.delphi-jedi.org/


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#30

Re: Smilies im Chat??

  Alt 23. Jul 2006, 11:45
Du kannst ihn in's OnChange-Event des JvRichEdits einbauen, dann wird immer nach Smileys gesucht wenn sich der Inhalt des JvRichEdits ändert.
MfG Sko
Zitat von Phoenix:
[OT]Phoenix guckt in die Glaskugel, zuckt mit den Flügelspitzen, krächzt etwas von wegen 'Boden' und 'Scherben' und schubbst die Kugel in Richtung Tischkante.[/OT]
Rockbox
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 07:39 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