AGB  ·  Datenschutz  ·  Impressum  







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

Tag Cloud Komponente

Ein Thema von Gruber_Hans_12345 · begonnen am 7. Mär 2013 · letzter Beitrag vom 8. Mär 2013
Antwort Antwort
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#1

Tag Cloud Komponente

  Alt 7. Mär 2013, 17:19
Suche auch noch eine Komponente für Tag Cloud

Habe im moment diese hier http://www.be-precision.com/products/tagcloud/
und dieses http://sourceforge.net/projects/icetagcloud/ (die läuft bei mir nicht da ich noch Delphi 2007 einsetze)

Kennt wer noch andere?
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
ConstantGardener

Registriert seit: 24. Jan 2006
Ort: Halberstadt
375 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Tag Cloud Komponente

  Alt 7. Mär 2013, 18:59
Hallo Hans,

icetagcloud ist etwas buggy, hab ich gleich verworfen. Die von bePrecision nutze ich im Moment. TMS hat auch eine Tag- und WordCloud-Compo. Ist ganz gut ist aber meiner Meinung nach keine wirkliche TagCloud, da die einzelnen Tags immer die gleiche Größe haben. Kannst ja mal schauen ob es was für dich ist.

cu cg
Andreas Schachtner
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Tag Cloud Komponente

  Alt 7. Mär 2013, 19:20
Kann man doch recht fix selbst programmieren.HTML generieren,im thtmlviewer anzeigen und Klicks abfassen.irgendwo habe ich noch ein Stück Quellcode dazu
Sven Harazim
--
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#4

AW: Tag Cloud Komponente

  Alt 7. Mär 2013, 20:42
Kann man doch recht fix selbst programmieren.HTML generieren,im thtmlviewer anzeigen und Klicks abfassen.irgendwo habe ich noch ein Stück Quellcode dazu
Stimmt wäre auch eine Möglichkeit, falls du den Code noch findest ... werde auch mal schaun
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
675 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 07:48
Bin mir nicht sicher mit welcher Delphi-Version das kam, aber ein TGridPanel dürfte doch noch viel einfacher sein, oder?
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 08:49
hier mal ein Codeausschnitt, ich hoffe er ist verständlich. Es handelt sich dabei um ein PopUpFenster, müsste also sicher etwas angepasst werden.

die Tag-Liste besteht aus dem Wort und der Anzahl der Vorkommen des Wortes.

Delphi-Quellcode:
type
  TPopupDlgUKAT3TagCloud = class(TFMDropDown)
    TntListBox1: TListBox;
    HTMLViewer1: THTMLViewer;
    procedure FormCreate(Sender: TObject);
    procedure TntListBox1DblClick(Sender: TObject);
    procedure HTMLViewer1HotSpotClick(Sender: TObject; const SRC: String;
      var Handled: Boolean);
  private
    SelectedTag : String;
    function GenerateContent(_Cloud : TIntegerStringObjectList) : String;
  public
    class function ShowDialog(_ParentForm : TForm;_Owner : TWinControl;
                              _Cloud : TIntegerStringObjectList;_Position : TRect) : String;
  end;

implementation

{$R *.dfm}

procedure TPopupDlgUKAT3TagCloud.FormCreate(Sender: TObject);
begin
  TranslateComponent (self);
  Scaled := false;
  KeyPreview := true;
  Align := alNone;
  BorderWidth := 20;
  TLclFontHelper.SetWindowsFont(self.Font);
  DropDownPosition := ddpAbove;
  Sizable := false;
  AnimateDropDown := false;
  SelectedTag := '';

  HTMLViewer1.DefBackground := clWhite;
end;

class function TPopupDlgUKAT3TagCloud.ShowDialog(_ParentForm : TForm;_Owner : TWinControl;
                              _Cloud : TIntegerStringObjectList;_Position : TRect) : String;
var
  f : TPopupDlgUKAT3TagCloud;
  i : Integer;
begin
  Result := '';

  f := TPopupDlgUKAT3TagCloud.Create(_Owner);

    for i := 0 to _Cloud.Count-1 do
     f.TntListBox1.Items.Add(_Cloud[i].Value);

    try
      f.HTMLViewer1.LoadFromString(f.GenerateContent(_Cloud));
    except
      on E:Exception do TLOg.Log(true,P_FATAL,_('Fehler beim Laden der Seite.'),e);
    end;

  try
    f.RollDownForm(_ParentForm, _Position.Left, _Position.Top, 0,_Position.Right,_Position.Bottom); // Use last width
    Result := f.SelectedTag;
  except

  end;
  f.Free;
end;

function TPopupDlgUKAT3TagCloud.GenerateContent(
  _Cloud: TIntegerStringObjectList): String;
var
  i,min,max : Integer;
  s : double;
begin
  min := _Cloud.GetMinKey;
  max := _Cloud.GetMaxKey-min;
  Result := '<html><body>';
  for i := 0 to _Cloud.Count-1 do
  begin
    //hstr := hstr + '<a href="'+cloud[i].Value+'" style="font-size: '+inttostr(s)+'em; font-weight: '+inttostr(w)+'">'+cloud[i].Value+'</a>';
    s := _Cloud[i].Key - min;
    s := (s * 100) / max;
    s := 20 + (30 /100*s );
    Result := Result + '<a href="'+_Cloud[i].Value+'" style="text-decoration:none;font-weight:100;font-size: '+FloatToStr(s)+'px; tahoma,sans-serif;font">'+_cloud[i].Value+'</a>&nbsp;&nbsp;';

  end;
  Result := Result + '</body></html>';
end;

procedure TPopupDlgUKAT3TagCloud.TntListBox1DblClick(Sender: TObject);
begin
  if TntListBox1.ItemIndex < 0 then exit;
  SelectedTag := TntListBox1.Items[TntListBox1.ItemIndex];
  CloseDropDown;
end;

procedure TPopupDlgUKAT3TagCloud.HTMLViewer1HotSpotClick(Sender: TObject;
  const SRC: String; var Handled: Boolean);
begin
  SelectedTag := src;
  Handled := true;
  CloseDropDown;
end;
Sven Harazim
--
  Mit Zitat antworten Zitat
Bentissimo

Registriert seit: 25. Apr 2006
Ort: Friedenfels
82 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 09:11
Hallo zusammen,

ich benutze ebenfalls die Variante von Precision. Bis jetzt hatte ich noch keine Probleme. Obendrein sieht es ganz ordentlich aus und erlaubt auch Ansichten als Listen oder Stichwort-Index.

Für 15 € kannst Du da imho nicht viel falsch machen.
Stephan Schmahl
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 16:39
Ich nutze die TMS Komponenten, habe mit TMS immer noch die besten Erfahrungen gemacht.
Was genau sind denn die Precision Komponenten? Steige da nicht durch, welche Anbieter die unterstützen; eigentlich finde ich überhaupt keinen Namen
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 16:56
Ich glaube du verwechselst hier "Tag Cloud" (Wortwolke) und "Cloud" (Daten speichern...)
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Tag Cloud Komponente

  Alt 8. Mär 2013, 17:02
Ich glaube du verwechselst hier "Tag Cloud" (Wortwolke) und "Cloud" (Daten speichern...)
Zumndest hat TMS (neben den Cloud "Daten speichern" Komponenten) auch 2 Komponenten die so etwas wie eine TagCloud darstellen (allerdings ohne verschiedene Fontgrössen wie es bei einer TagCloud im Netz üblich ist: Siehe hier
Ralf Kaiser
  Mit Zitat antworten Zitat
Antwort Antwort


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 13:18 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