AGB  ·  Datenschutz  ·  Impressum  







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

Skalierbare RichEdit Komponente

Ein Thema von ATS3788 · begonnen am 1. Mai 2013 · letzter Beitrag vom 6. Mai 2013
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von ATS3788
ATS3788

Registriert seit: 18. Mär 2004
Ort: Kriftel
646 Beiträge
 
Delphi XE Starter
 
#1

Skalierbare RichEdit Komponente

  Alt 1. Mai 2013, 07:58
Hallo
Ich habe das schon mal vor 2 Jahren gefragt.
Leider ohne Ergebnis, vielleicht hat sich ja was getan.

Kennt jemand eine Möglichkeit Eine TRichEdit
Komponente skalierbar zu machen.
Also das genau z.B. nur
40 Spalten und 25 Zeilen angezeigt werden.
Martin MIchael
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Skalierbare RichEdit Komponente

  Alt 1. Mai 2013, 09:09
Hmmm, mal überlegen ...

RichEdit heißt ja auch, dass dort Text in beliebigen Schriftarten und Größen angezeigt werden kann.
Also würde ich mal sagen, dass deine Anforderung von einer TRichEdit Komponente niemals erfüllt werden kann weil es sich eben um RichText handelt.

Kann es sein, dass du etwas wie beim SynEdit (TSynMemo) suchst, wo du Text mit einer festen Schriftart und Größe aber mit Farbattributen darstellen kannst?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Skalierbare RichEdit Komponente

  Alt 1. Mai 2013, 11:05
In Texteditoren werden auch feste Schriftarten und -größen verwendet und trotzdem kann man die angzeigte Größe skalieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#4

AW: Skalierbare RichEdit Komponente

  Alt 1. Mai 2013, 11:31
Ich glaube, das hat Sir Rufo verwirrt:
Also das genau z.B. nur 40 Spalten und 25 Zeilen angezeigt werden.
Das ist bei variabler Schriftgröße und nicht-Monospace-Schriften etwas kniffelig.
Man könnte das eventuell lösen, wenn man vorgibt, dass man dann zum Beispiel 40 Zeichen der Zeile anzeigen will, bei der die Breite des Textes für 40 Zeichen maximal ist.

Im Grunde hast du 2 Probleme:
  • Wie skaliere ich eine RichText-Edit (geht das überhaupt)?
  • In welche Skalierungsstufe werden Angaben wie 40 Spalten und 25 Zeilen übersetzt?

Aber mir kommt das Gesamtproblem auch etwas merkwürdig vor.
Kannst du eventuell etwas mehr darüber sagen, was du mit dem Ding machen willst?
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#5

AW: Skalierbare RichEdit Komponente

  Alt 1. Mai 2013, 13:13
Kennt jemand eine Möglichkeit Eine TRichEdit Komponente skalierbar zu machen. Also das genau z.B. nur 40 Spalten und 25 Zeilen angezeigt werden.
Ganz einfach in den Constraints nur die Breite und Höhe erlauben, die dazu führt, daß nur die erwünschte Zeilen- und Spaltenzahl angezeigt wird. Oder anders ausgedrückt: Die Zeilenzahl in einem Richedit stellt keinen festen Wert dar, sondern ist abhängig von der Breite des Clientbereichs und der Größe der Schriftart. Schiebst du das Richedit zusammen, entstehen automatisch mehr Zeilen bei gleichem Textinhalt – und natürlich verringert sich dadurch die Anzahl der Spalten - und umgekehrt. Oder du berechnest die erforderliche Schriftgröße, um immer bei der gewünschten Zeilen- und Spaltenzahl zu landen.

Wozu glaubst du denn sowas doch eher Absurdes zu benötigen?
  Mit Zitat antworten Zitat
Benutzerbild von ATS3788
ATS3788

Registriert seit: 18. Mär 2004
Ort: Kriftel
646 Beiträge
 
Delphi XE Starter
 
#6

AW: Skalierbare RichEdit Komponente

  Alt 2. Mai 2013, 10:51
Sir Rufo
Du hast ja mal wieder recht.
Ich meine natürlich Breite und Höhe in Pixel.
Martin MIchael
  Mit Zitat antworten Zitat
Benutzerbild von ATS3788
ATS3788

Registriert seit: 18. Mär 2004
Ort: Kriftel
646 Beiträge
 
Delphi XE Starter
 
#7

AW: Skalierbare RichEdit Komponente

  Alt 2. Mai 2013, 10:56
Perlsau

Im meinem Fall zum bedrucken eines Ordnerrückens und
der hat nur eine begrenzte Fläche.
Martin MIchael
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#8

AW: Skalierbare RichEdit Komponente

  Alt 2. Mai 2013, 11:00
Böte sich da nicht eher ein Report an?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: Skalierbare RichEdit Komponente

  Alt 2. Mai 2013, 14:02
Im meinem Fall zum bedrucken eines Ordnerrückens und der hat nur eine begrenzte Fläche.
Da ist ein RichEdit so ziemlich der schlechteste Ansatz, denn das Druckbild unterscheidet sich immer von der Bildschirmansicht. Wenn du ein RichEdit mit MeinRichEdit.Print ausdruckst, kommt es auf die Druckereinstellungen an, wie das Druckformat aussieht. Und wenn du mehrere Ordner-Aufkleber auf ein Din-A4-Blatt drucken möchtest, mußt du dir sowieso was anderes einfallen lassen.

Wenn bei deinem XE-Starter ein Report-Generator dabei ist, bist du mit dessen Verwendung wohl am besten beraten, wie bereits Sir Rufo angedeutet hat. Ansonsten kannst du dir auch mit einem TImage behelfen, auf das du den Text ausgibst und das du dann entsprechend skaliert auf den Drucker ausgibst. Ich hab das mal vor vielen Jahren mit Delphi 7 Personal so gemacht – das Programm wird noch heute von dem Künstlerverein, dem ich das programmiert hatte, eingesetzt. Allerdings war die dortige Grafikausgabe wesentlich anspruchsvoller: Torten- und Säulengrafiken, Tabellen, Doppelsäulen und dergleichen mehr. Wenn du mit einem Canvas-Objekt arbeitest, das du deinen Grafik-Proceduren übergibst, kannst du letztere für Bildschirm- und Druckausgabe verwenden.
  Mit Zitat antworten Zitat
Benutzerbild von ATS3788
ATS3788

Registriert seit: 18. Mär 2004
Ort: Kriftel
646 Beiträge
 
Delphi XE Starter
 
#10

AW: Skalierbare RichEdit Komponente

  Alt 4. Mai 2013, 09:39
hALLO mOIN Perlsau

Danke, Danke, klar zum drucken nehme ich FastReport nur ich muss die
Daten erst mal eingeben und da schwebte mir so ein pseudo WYSIWAG vor.
Funzt ganz ordentlich.

Delphi-Quellcode:
procedure TForm1.reResizeRequest(Sender: TObject; Rect: TRect);
var
height : integer;
begin
height := Rect.Bottom;
// Button2.Caption := IntToStr( re.Constraints.MaxHeight );
if re.Constraints.MaxHeight > 0 then
if height > re.Constraints.MaxHeight then
re.Lines.Delete( re.Lines.Count -1 );
// LB.Items.Add( format ( 'r%d-b%d-t%d-l%d' , [Rect.Bottom - 300 , Rect.Bottom , Rect.Top , Rect.Left ]) );
end;
Das ist weit von perfekt, wenn die Eingabe height überschreitet
lösche ich einfach die letzte Zeile. Schöner wäre es die letzte
Eingabe bei überschreiten zu löschen, nur das bekomme ich nicht hin,
wenn nur ein "RETURN" getätigt wird. Delete mag das nicht.
Martin MIchael
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:54 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