掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
FMXでTPaintBoxでの描画範囲とvclでのTUpDownに相当するコンポーネント (ID:49724)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
yTakeです。 1) 以前、質問させて頂いて描画は可能になりました。その配置に疑問があります。 作成したBitmap画像をPaintBoxへ描画する事を考えます。 Form上にPanelを配置しその上にPaintBoxを配置しています。 PanelのPositionはX=8,y=8(LeftTop座標)で、PaintBoxのPositionもX=8,y=8(LeftTop座標)です。 コードを、 sRect := TRectF.Create( 0, 0, bmp.width - 1, bmp.Height - 1 ); dRect := TRectF.Create( 0, 0, PaintBox1.Width - 1, PaintBox1.Height - 1 ); AOpa := 1; PaintBox1.Canvas.BeginScene(); PaintBox1.Canvas.DrawBitmap( bmp, sRect, dRect, AOpa ); PaintBox1.Canvas.EndScene(); としました。 描画はされるのですが、描画される位置が想定と違います。意図としてはPanelの原点(LeftTop)から(8,8)のところ(PaintBoxの原点(0,0))から描画させたかったのですが、何故かFormの原点(0,0)から描画されています。つまり、Panelの原点からみれば(-8,-8)になります。 Form座標系で言えば(16,16)が意図する座標になります。 DrawBitmap手続きの第2第3引数の矩形で、第2はコピー元のBitmapの範囲を示し、第3はコピー先のPaintBoxの範囲を示すと思います。 つまり、配置したPaintBox1の(0,0)(=Panel1の(8,8)(=Form1の(16,16)))から描画させたいのですが、実際はFormの(0,0)から描かれています。 PaintBoxの原点或いは任意の領域に描画するにはどの様にするのでしょう? 2) FMXではvclでのTUpDownが見当たりません。代わりにTSpiンBoxを使っています。 矢印の配置を上下にしたいのですが、配置は変更できない様です。 問題といいますか、疑問は、Incrementを0.1に設定しDecimalDigitsを1、ValueTypeをFloatとした場合、整数の表示が”1.0”や”2.0”ではなく”1”,”2”となっていて少数部の”.0”が表示されません。動作上は問題ないのですが、何故でしょう?何か設定で改善されるのでしょうか? 以上、ご教授願えるでしょうか? 当方、 32bitWin10+Delphi XE6 です。 よろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.