![]() |
XE5 Android Canvas und Bücher
Hallo,
ich entwickle bisher mit dem C++ Builder. Bisher finde ich nur Hilfe zu Delphi (irgendwie will er meine Online Hilfe nicht installieren). Da Funktionen wie Canvas.Ellipse in Android nicht gehen - dort ist es DrawEllipse stoß ich einfach oft an meine Grenzen. Ich hab ein Image mit einem Bitmap und will einfach per Touch drauf malen. Später dann mit GDI+, falls das geht, um transparent zu malen. Gibt es irgend ein Buch zur Android Entwicklung mit dem XE5 ? Danke ! |
AW: XE5 Android Canvas und Bücher
Zitat:
Zitat:
|
AW: XE5 Android Canvas und Bücher
Von Harry Stahl gibt es ein Buch zu firemonkey der hatte auch hier im Forum geschrieben, ob er es auf xe5 erweitert hat weiß ich nicht
|
AW: XE5 Android Canvas und Bücher
@Iatros : Wenn es dir weiterhilft, Kreise bzw. Ellipsen kann man so malen.
Delphi-Quellcode:
rect.Left:= a;
rect.Top:= b; rect.Right:= c; rect.Bottom:= d; Canvas.BeginScene; canvas.DrawEllipse(rect,1); Canvas.EndScene; |
AW: XE5 Android Canvas und Bücher
Hallo,
darf ich nochmal ne Frage dazu stellen. Ich hab das versucht, bekomme die Fehlermeldung es gibt keine überladene funktion von drawellipse Im Image ist ein bmp Bild. Per Touch will ich an der Stelle eine (ausgefüllte) Ellipse zeichnen.
Delphi-Quellcode:
procedure TTabbedForm.imgDrawTestMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Single); var rect : TRect; begin rect.Left:= 10; rect.Top:= 10; rect.Right:= 30; rect.Bottom:= 30; imgDrawTest.Canvas.BeginScene; imgDrawTest.Canvas.DrawEllipse(rect,1); imgDrawTest.Canvas.EndScene; end; |
AW: XE5 Android Canvas und Bücher
Also so deklariert ?
Delphi-Quellcode:
dann verstehe ich das nicht - denn timage.canvas.DrawEllipse gibt es
var imgDrawTest:timage;
|
AW: XE5 Android Canvas und Bücher
Der Parameter ist vom Typ
![]() |
AW: XE5 Android Canvas und Bücher
Zitat:
|
AW: XE5 Android Canvas und Bücher
Ok, danke. Bringt zumindest keinen Ferhler - malt aber auch nicht :-(
Ich hab im Entwurf das Bild da rein geladen. Mit rect definier ich doch die Position, an der die Ellipse dann gezeichnet wird. Da ich das direkt im canvas des Image mache müsste er es doch anzeigen ? Image.Canvas.Brush.Color gibt's nicht. Ich fummel mich da mal durch. Wär nur schön wenn ich zumindest drauf malen könnte. |
AW: XE5 Android Canvas und Bücher
So zeichne ich unter FMX (Win) Rechtecke auf einen Formularcanvas.
Vielleicht findest Du da einen Hinweis...
Delphi-Quellcode:
procedure PaintLayoutRects;
var I: Integer; iRegion: TssRegion; procedure FR(R: TssRect); begin PaintLayoutCanvas.FillRect(TRectF.Create(R.Left, R.Top, R.Width, R.Height), 0, 0, [], 1, TCornerType.ctBevel); end; procedure PF; begin PaintLayoutCanvas.DrawRect(TRectF.Create(0, 0, PaintLayout.Width, PaintLayout.Height), 0, 0, [], 1, TCornerType.ctBevel); end; procedure PR(R: TssRect); begin PaintLayoutCanvas.DrawRect(TRectF.Create(R.Left, R.Top, R.Right, R.Bottom), 0, 0, [], 1, TCornerType.ctBevel); end; begin if (not Assigned(PaintLayout)) or (not Assigned(PaintLayoutCanvas)) then Exit; PaintLayoutCanvas.BeginScene; PaintLayoutCanvas.Clear(claWhitesmoke); PaintLayoutCanvas.Stroke.Kind := TBrushKind.bkSolid; PaintLayoutCanvas.Stroke.Color := claLime; PaintLayoutCanvas.StrokeThickness := 1; PF; for I := 0 to PaintLayout.Regions.Count - 1 do begin iRegion := PaintLayout.Regions.Items[I]; PR(iRegion.NewRect); end; PaintLayoutCanvas.EndScene; end; Nachtrag: Ach so, Image ... Das wird sicherlich ständig neu gezeichnet sobald eine Mausaktion triggert. Insofern kann es sein, dass Deine Ellipse gezeichnet wird, dann aber sofort das Image (das Bild des Image) wieder neu dargestellt wird. Auf einen Canvas zu zeichnen ist dem Fall nicht der richtige Weg. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:42 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-2025 by Thomas Breitkreuz