AGB  ·  Datenschutz  ·  Impressum  







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

Paintbox- Text schreiben

Ein Thema von Dunkelbunt27 · begonnen am 4. Nov 2010 · letzter Beitrag vom 7. Nov 2010
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Dunkelbunt27
Dunkelbunt27

Registriert seit: 10. Aug 2010
232 Beiträge
 
Delphi XE Professional
 
#1

Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:19
Hallo Delphi Praxis,

ich möchte Text auf meine Paintbox schreiben. Die Paintbox wird zur Laufzeit erzeugt und weiß gefärbt.
Ich habe
Delphi-Quellcode:
var
Schrift: String;
Begin
  PaintBox1.Canvas.Textout(0,0,Schrift);
  Schrift:='Hallo Welt';
end;
ausprobiert, jedoch passiert garnichts...
Jemand hat mir gesagt ich soll irgendwie den Text der Paintbox erst zuweisen
Damit kann ich jetzt leider nichts anfangen.
Ich hoffe ihr könnt mir helfen.

VG Dunkelbunt
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:20
Tausch doch die beiden Befehle einmal aus (erst zuweisen, dann malen).
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
Benutzerbild von Muellermilchtrinker
Muellermilchtrinker

Registriert seit: 1. Aug 2009
447 Beiträge
 
Delphi 2009 Professional
 
#3

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:21
Drehs mal um. Also erst Schrift := 'Hallo Welt' und dann deine Canvasfunktion
EDIT: Roter Kasten ist weg, da war jmd. schneller.
Chuck Norris doesn't need backups. He just uploads his files and lets the world mirror them.
  Mit Zitat antworten Zitat
Benutzerbild von Dunkelbunt27
Dunkelbunt27

Registriert seit: 10. Aug 2010
232 Beiträge
 
Delphi XE Professional
 
#4

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:24
Delphi-Quellcode:
var
Schrift: String;
Begin
  Schrift:='Hallo Welt';
  PaintBox1.Canvas.Textout(0,0,Schrift);
end;
Ergebnis: Überraschenderweise... Nichts...

PS: Das hatte ich vorher auch schoneinmal probiert. Ich werd es aber umgedreht lassen also:
Delphi-Quellcode:
var
Schrift: String;
Begin
  Schrift:='Hallo Welt';
  PaintBox1.Canvas.Textout(0,0,Schrift);
end;
ist logischer. Leider trotzdem nicht die Lösung.

EDIT:
So sieht jetzt die Prozedur aus:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var Schrift: string;
begin
// Paintbox erstellen
PaintBox1:=TPaintbox.Create(self);
PaintBox1.Parent:=Schreibblatt;
// Paintbox weiß färben
Form1.Panel1.Color := clwhite;
// Schreibversuch
Schrift:= 'Hallo Welt';
Form1.PaintBox1.canvas.TextOut(10,10,Schrift);
end;

Geändert von Dunkelbunt27 ( 4. Nov 2010 um 19:29 Uhr)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:30
Auf die Paintbox darf man nur aus dem Event OnPaint heraus zeichnen!!

Im Anhang ist mein Paintbox-Demo.
Ich denke es ist gut geeignet um die Paintbox kennenzulernen.
Angehängte Dateien
Dateityp: zip PaintboxDemo.zip (170,9 KB, 58x aufgerufen)
Andreas

Geändert von shmia ( 4. Nov 2010 um 19:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Dunkelbunt27
Dunkelbunt27

Registriert seit: 10. Aug 2010
232 Beiträge
 
Delphi XE Professional
 
#6

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:34
Okay, ich habe es im OnPaint der Form und im OnPaint der Paintbox selber versucht
... wieder nichts

EDIT:
Könnte es vielleicht sein, dass mein Panel aus irgendeinem Grund die Paintbox überdeckt?
(Panel ist nach hinten und Paintbox nach vorne gesetzt)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:37
und im OnPaint der Paintbox selber versucht
Das wäre das richtige Event.
Schau Dir mal mein Demo von oben an.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Dunkelbunt27
Dunkelbunt27

Registriert seit: 10. Aug 2010
232 Beiträge
 
Delphi XE Professional
 
#8

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:42
Danke, ich schau mir die Demo an und melde mich dann wieder, ich hoffe das klärt die Frage.



__________________________________________________ _________________________________
(Auf Seite 2 gehts weiter)

Geändert von Dunkelbunt27 ( 4. Nov 2010 um 20:43 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#9

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 19:55
EDIT:
Könnte es vielleicht sein, dass mein Panel aus irgendeinem Grund die Paintbox überdeckt?
(Panel ist nach hinten und Paintbox nach vorne gesetzt)
Ja, exakt das ist der Fall.

TPaintBox ist ein TGraphicControl und TPanel ist ein TWinControl. TWinControls verdecken immer alle TGraphicControls auf der gleichen Ebene. (Du kannst die Paintbox natürlich in das Panel hineinschieben, aber das ist was anderes)

Also nimm das Panel da weg
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#10

AW: Paintbox- Text schreiben

  Alt 4. Nov 2010, 20:00
Wenn der Parent der Paintbox nicht das Panel, sondern die gemeinsame Form ist, verdeckt es sie. Forms und Panels sind WinControls, welche einen eignen Canvas haben, während TPaintbox ein GraphicControl ist, welches nur auf den Canvas seines Parents durchleitet.
Wenn also die Form der Parent ist, malst du auf die Form an der Stelle, an der das Panel mit seinem eigenen Canvas darüber liegt. Lösung: Parent der Paintbox sollte das Panel sein, nur sehr wahrscheinlich nicht "Schreibblatt", was auch immer das ist.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  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 14:30 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