Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Tabellen zeichnen
Jakob_Ullmann - Fr 02.03.07 16:05
Titel: Tabellen zeichnen
Hallo.
Vor Kurzem habe ich rausbekommen, wie man im RichEdit Texte verschieden formatieren kann.
Daraufhin habe ich ein Programm geschrieben, mit dem man Text formatieren und als RTF speichern bzw. laden kann.
Es kann alle ASCII Sonderzeichen schreiben. Dann habe ich beim Testen mal eine Excel-Tabelle reinkopiert.
Die Tabellen hat man gesehen. Sie sahen ganz normal aus - eben nach schwarzen Tabellen.
Nun wollte ich mal fragen, ob man das auch von Delphi aus regeln könnte, ohne Excel aufzurufen, in der Entwurfszeit - und wenn ja, wie es geht.
Wäre für eine Antwort sehr dankbar.
____________________
Jakob U.
ssb-blume - Fr 02.03.07 16:25
Genau darauf suche ich auch noch eine Antwort!
Lannes - Fr 02.03.07 17:05
Hallo,
Tabellen im RichEdit anzuzeigen ist nicht so schwierig, eignet sich aber nur zur
Anzeige, da kein Zugriff per Code auf die Tabelle bzw. Tabelleninhalte möglich ist.
Interresant ist in diesem Zusammenhang auch
Flockes TRtfLabel [
http://www.delphipraxis.net/topic79525_trtflabel+label+zur+darstellung+von+rtf.html&highlight=rtflabel]
Hier mal ein Ansatz mittels Stream:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92:
| var MyMS: TMemoryStream; MyRTFList : TStringList; begin MyRTFList := TStringList.Create; MyMS := TMemoryStream.Create; try MyRTFList.Add('{\rtf1' +'{\fonttbl{' +'\f0 Arial;' +'\f1 Courier;' +'\f2 Verdana;' +'\f3 Times New Roman;' +'}}'); MyRTFList.Add('{\colortbl;' +'\red0\green0\blue0;' +'\red255\green0\blue0;' +'\red0\green128\blue0;' +'\red0\green0\blue255;' +'\red255\green128\blue0;' +'\red\green182\blue255;' +'}'); MyRTFList.Add('\sb165' +'\sa75' +'\ri160' +'\f3' +'\fs18' +'\qr 25.09.2005' +'\par'); MyRTFList.Add('\li560' +'\f0' +'\fs28\b' +'\ql' +'\cf6' +'Eine Tabelle im Standard-RichEdit' +'\par'); MyRTFList.Add('\pard' +'\plain'); MyRTFList.Add('\trowd' +'\trleft160' +'\trgaph60' +'\sb75\sa75' +'\cellx8000'); MyRTFList.Add('\fs20\b\intbl' +' Fundamentale Integer-Typen' +'\cell' +'\row'); MyRTFList.Add('\trowd\trleft160\trgaph60\sb75\sa75' +'\cellx1000' +'\cellx4100' +'\cellx8000'); MyRTFList.Add('\fs20\intbl' +' Typ\cell' +' Wertebereich\cell' +' Format\cell\row' +'\b0'); MyRTFList.Add('\intbl Shortint\cell' +'\f1' +'\cf2' +' -128' +'\cf0' +'..127' +'\f0\cell' +' 8 Bit einschließlich Vorzeichen\cell\row'); MyRTFList.Add('\intbl Smallint\cell\f1{\cf2 -32768}..32767\f0\cell 16 Bit einschließlich Vorzeichen\cell\row'); MyRTFList.Add('\intbl Longint\cell{\f1{\cf2 -2147483648}..2147483647}\cell 32 Bit einschließlich Vorzeichen\cell\row'); MyRTFList.Add('\intbl Byte\cell\f1 0..255\f0\cell 8 Bit, besitzt kein Vorzeichen\cell\row'); MyRTFList.Add('\intbl Word\cell\f1 0..65535\f0\cell 16 Bit, besitzt kein Vorzeichen\cell\row'); MyRTFList.Add('\pard\fs1\par'); MyRTFList.Add('\pard\trowd\trleft5450\trgaph60\sb0\sa0\cellx8000'); MyRTFList.Add('\fs16\cf5\f2\intbl Auszug aus der Delphi 3-Hilfe\cell\row'); MyRTFList.Add('\intbl Lannes\cell\row'); MyRTFList.Add(''); MyRTFList.Add('}'); MyRtfList.SaveToStream(MyMS); MyMS.Seek(soFromBeginning,0); RichEdit1.PlainText := False; RichEdit1.Lines.LoadFromStream(MyMS); finally MyRTFList.Free; MyMS.Free; end; |
Jakob_Ullmann - Sa 03.03.07 12:58
Nun: Dann haben wir sie ja jetzt!
Dank dir Lannes!
Jakob_Ullmann - Sa 03.03.07 13:01
Haben wir im Delphi-Forum nicht auch jemanden, der Flocke heißt?
Mir ist's so, als hätte ich das schon mal gehört.
Flocke - Mo 12.03.07 17:47
Jakob_Ullmann hat folgendes geschrieben: |
| Haben wir im Delphi-Forum nicht auch jemanden, der Flocke heißt? |
Ja, haben wir :mrgreen:
Bin aber nicht so oft hier im Forum, da ich im Moment viel zu tun habe...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!