Προς το περιεχόμενο

Delphi - σχεδίαση γραμμής με ΤCanvas


Μέλας Κύων

Προτεινόμενες αναρτήσεις

Δημοσ.

καλη(σπ)OR(μ)ερα παιδιά. Εχω καποιο προβλημα όσο αφορά σχεδίαση γραμμής ή κειμένου σε φόρμα με τη χρήση της κλάσης ΤCanvas. Εχουμε π.χ.

------------

procedure TForm1.FormCreate(Sender: TObject);

begin

Canvas.MoveTo(100,100);

 

Canvas.LineTo(200,100);

 

end;

 

ενω με τη διαδικασία αυτή κανονικά θα έπρεπε να σχεδιάζεται μια γραμμή απο θεση (100,100) σε (200,100), εντουτοις δεν εμφανίζεται στη φόρμα Form1 η γραμμή αυτή. Προσπάθησα να δώ αν κάποια ιδιότητα της φορμας πρέπει να αλλάξει για να σχεδιαστεί, ομως χωρις αποτέλεσμα.

Πρέπει μηπως να χρησιμοποιήσω και καποιο άλλο στοιχείο ή Unit για να την εμφανίζει?

 

Kαι κάτι άλλο. Π.X. Με Canvas.textout(100,100,'Ενα κειμενο...') δεν εμφανίζεται κείμενο στην οθονη.

ΣΟΣ

Δημοσ.

Τοποθέτησε τον κώδικα σου στο OnPaint event της φόρμας -αφού σχεδιάζεις στο TForm canvas οφείλεις να ανταποκρίνεσαι στο OnPaint της φόρμας σου (δηλαδή στo WM_PAINT message των MS-Windows).

 

Σε διαφορετική περίπτωση, αν θες να σχεδιάζεις από το OnCreate event ή από όπου αλλού επιθυμείς χρησιμοποίησε το TImage component (το οποίο κάνει αυτόματα OnPaint στο Canvas του απλοποιόντας την διαδικασία).

 

Αυτά από CodeGear C/C++ Builder & Turbo C++ - και σε Delphi το ίδιο θα είναι (πιστεύω..)

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...