Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Tabellen-Control gesucht (https://www.delphipraxis.net/74670-tabellen-control-gesucht.html)

Kasch 7. Aug 2006 14:35


Tabellen-Control gesucht
 
Hallo Leute,

ich suche ein einfaches und gut zu programmierendes Control, welches ein paar Daten in Tabellenform anzeigen lassen kann.
Die einzelnen Zellen sollten frei ansprechbar und konfigurierbar (Hintergrundfarbe, Schriftdicke etc) sein.
Und es sollte irgendwie abschaltbar sein, daß der Focus da einen gestrichelten Rand oder farbige Makierung anzeigt.

Habe schon mit StringGrid probiert, aber der Focus und damit die blaue Zellenmarkierung/Rand läßt sich nicht abschalten.

Wer kann mir da freundlicherweise weiterhelfen? Vielen Dank.

marabu 7. Aug 2006 14:39

Re: Tabellen-Control gesucht
 
Hallo,

alles was du willst geht mit dem StringGrid, sobald du die Zellen selbst zeichnest. Aber vielleicht sagen dir ja die Komponenten aus dem TMS Software GridPack eher zu?

Grüße vom marabu

Kasch 7. Aug 2006 16:27

Re: Tabellen-Control gesucht
 
was meinst du mit selbstzeichen der Zellen?
Gibt es da irgendwie ein Beispiel für?
Ich wollte es eigentlich nur ganz einfach haben.
Zur Not würden auch ein Array von Labels gehen, aber wenn es vielleicht doch schon ein Tabellen-Control gibt..

Andreas L. 7. Aug 2006 16:44

Re: Tabellen-Control gesucht
 
Eine etwas unschöne Lösung wäre eine HTML-Seite zu generieren und von einen TWebBrowser anzeigen zu lassen.

Vorteil: Du kannst jede Zelle so anpassen wie du willst.
Nachteil: min. IE5+ benötigt, bei größeren Tabellen wird das generieren der HTML-Seite etwas länger dauern, der User kann die Tabelle nicht editieren außer du baust was mit HTML-Editfelder wird aber sehr viel Aufwand...

Kasch 7. Aug 2006 16:57

Re: Tabellen-Control gesucht
 
ich will so 15x15 werte aus eine Array darstellen, da wäre das mit HTML für mich zu aufwändig denke ich (keine HTML-Erfahrung), aber die Idee ist nicht schlecht

DGL-luke 7. Aug 2006 17:11

Re: Tabellen-Control gesucht
 
StringGrid uns selberzeichnen ist eigentlich nicht schwierig.

Delphi-Quellcode:
type
  TTableCellInfo = record
    s: string;
    BackColor, ForeColor: TColor;
    BorderWidth: Integer;
  end;

var
  TableInfos: array[0..10,0..15] of TTableCellInfo;
Das musst du nur entsprechend füllen. Im OnOwnerDraw-Ereignis des Stringgrids solltest du an die Koordinaten der jeweiligen Zelle kommen und kannst das dann entsprechend zeichnen.

Andreas L. 7. Aug 2006 17:15

Re: Tabellen-Control gesucht
 
Zitat:

Zitat von Kasch
ich will so 15x15 werte aus eine Array darstellen, da wäre das mit HTML für mich zu aufwändig denke ich (keine HTML-Erfahrung), aber die Idee ist nicht schlecht

Das sollte nicht schwer sein und auch auf alten Systemen relativ flott funktionieren. Hab mal was gebastelt:

Delphi-Quellcode:
var
 sl: TStringlist;
 i, i2: Integer;
begin
 sl:=TStringList.create;
 sl.add('<table>');
 for i:=1 to 15 do
  begin
   sl.add('<tr>');
    for i2:=1 to 15 do
     begin
      sl.add('<td>hier text oder so einfügen...</td>');
     end;
   sl.add('<tr>');
  end;
 sl.add('</table>');
ungetestet, hoffentlich kein Denkfehler. Für weiteres zu HTML: de.selfhtml.org


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz