• ベストアンサー

ピクチャーボックスのスケール変更についての質問( .NET )

picutreboxをグラフとしての使用を目的にしております。 VB6.0ではScaleやScaleWidth(Height)プロパティで スケール値を変更していましたが、.NETではそれに対応したプロパティが見つかりません。どなたかお分かりになる方、ご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • ALGO-9
  • ベストアンサー率66% (12/18)
回答No.2

印刷系の処理なら e.Graphics.PageUnit = GraphicsUnit.Millimeter  で座標単位をミリ(m)で使用できます。  ※eはPrintObjectを示しています。 現在、.NETの環境がないので調査できませんが、Pixel以外の単位でも可能だと思います。 PrintObjectもPixelのみ使用可能と記述されていましたが他の単位を指定できましたので、 PictureBoxにおいても、出来るのでは?と思います。

その他の回答 (1)

  • mcq
  • ベストアンサー率48% (45/93)
回答No.1

http://www.microsoft.com/japan/msdn/net/vbtransitionguide/chapter5/chapter5_2.asp Visual Basic 6.0 では座標の単位 (ScaleMode) をセンチ、インチなどが選択でき、デフォルトは Twip でした。 Visual Basic .NET では、座標の単位は Pixel だけになります。 だそうです。

tamajun
質問者

お礼

早速のご回答ありがとうございました。 単位はPixelのみと言うことは負のデータが表示出来ないということですね。表示する前に元のデータを表示用にオフセットをつけなければならないと言うことですね。参考になりました。

関連するQ&A

  • VB6のPrinter.ScaleWidth に対応するvb.netの

    VB6のPrinter.ScaleWidth に対応するvb.netの命令はありますか。 VB.netでプリンタにグラフ印刷させようとしているのですが、VB6の場合Printer.ScaleWidth、Printer.ScaleHeightでA4サイズにスケーリングできたのですがVB.netではScaleWidth,ScaleHeightに変わるものを見つけることができません。 たとえばA4サイズにスケーリングする場合自分で座標の最大値を取り出しスケールを計算し座標に掛けてやるしかないのでしょうか。 環境Windows XP VisualBasic 2010 Express

  • VB 6.0 PictureBox のプロパティに存在したScaleHeight ScaleWidthは.netには存在しない?

    VB .netにてPictureBox コントロールを使用して ライン描画を行なおうとしています。 VB 6.0の時には存在していたScaleHeigth,ScaleWidthのプロパティは.netには存在していないみたいですが何か変わるものは用意されていないでしょうか? 実際の表示幅(Height,Width)ではなくScaleHeigth,ScaleWidthを使用して細かいライン描画をしたいのですが、どなたか方法をご存知の方がいましたらよろしくお願いいたします。

  • Picture box の サイズを変更

    お世話になります。 VB6 でform1 上に Picture1 を貼付け ボタンを押すとPicture Boxのサイズを変更したいのですが 上手くサイズが変更されません。何か根本的な間違いでしょうか よろしくお願いします。 例: Yoko = 600 Tate = 480 Private Sub Command1_Click() With Picture1 .ScaleMode = 3 ' .Width = Yoko .Height = Tate End With End Sub

  • ピクチャーボックスでの折線グラフ作成 VB6.0

    お世話になります。 VB6.0にて、下記データを使って、ピクチャーボックスを使用して、コマンドボタンを1つクリック毎に、 「10個の数値」を使って、CurrentX CurrentY で「点」を描写、「点」同士をつないで、折線グラフ作成 また、連続でクリックする事により、アニメのように見える という事をしたいです。  ここで、下記「データ群」のように、1、2、3、とクリックで移動する毎に、数値の MAX MIN が変化していき、 [ Picture1.Height = 200 ] としてる為、縦方向にムダなく表示する為、「倍率」を求める事になります。 「1」の場合の「倍率」 = 200 ÷ (33 - 1) 「2」の場合の「倍率」 = 200 ÷ (49 - 1)    ですので、ボタンクリックの度に、 「10の数値」の MAX MIN で「倍率」を求める その「倍率」を使って折線グラフ作成  となります。  しかし、これが「10個の数値」ではなく、100~500、また各数値も 130.88 など3桁、小数点アリ になると、 「倍率」計算で時間が懸かり、アニメのように、とは難しいです。  画像であるなら、Picture1.AutoSize があり、縦方向にピッタリとなりますが。  さてここで質問ですが、私は「倍率」を求めてそれを元に折線グラフ作成としていますが、 もっとイイ方法があれば、是非御教授下さい。 お願いします。  なお「MSChart」は使わないという事で。 データ群 「1」~「6」 1 [ 01~10 23 ,01 ,02 ,13 ,19 ,29 ,33 ,15 ,17 ,21 ] MAX; 33 MIN; 01 2 [ 02~11 01 ,02 ,13 ,19 ,29 ,33 ,15 ,17 ,21 ,49 ] MAX; 49 MIN; 01 3 [ 03~12 02 ,13 ,19 ,29 ,33 ,15 ,17 ,21 ,49 ,17 ] MAX; 49 MIN; 02 4 [ 04~13 13 ,19 ,29 ,33 ,15 ,17 ,21 ,49 ,17 ,54 ] MAX; 54 MIN; 13 5 [ 05~14 19 ,29 ,33 ,15 ,17 ,21 ,49 ,17 ,54 ,27 ] MAX; 54 MIN; 15 6 [ 06~15 29 ,33 ,15 ,17 ,21 ,49 ,17 ,54 ,27 ,78 ] MAX; 78 MIN; 15 With Picture1 .Cls: .BackColor =白 .Width = 3000: .Height = 200 .ScaleWidth = .Width: .ScaleHeight = .Height .AutoRedraw = True .DrawWidth = 1 .DrawStyle = 0 .FillStyle = 0 .FillColor = 黒 End With   各数値 ----------------- 01 23 02 01 03 02 04 13 05 19 06 29 07 33 08 15 09 17 10 21 11 49 12 17 13 54 14 27 15 78

  • VB2005 Textboxの高さ変更

    VB2005 Textboxの高さ変更ですが SizeのHeightを変えても変更されないようで(文字の大きさに依存しているみたいで)すがプロパティーのどこを変えれば高さが変更できるでしょうか。

  • VB.NETの原点の変更

    VB.NETを使用しているのですが、図を描写するときに、pictureboxを使用した場合(formもそうですが)、原点が左上にきて、右にx軸の+、下にy軸の+となります。そのため、描写すると、上下の逆転した図になります。VB6.0の場合、scale関数を用いて原点の変更が出来たのですが、VB.NETではそのような関数が見当たりません。(scale関数ではうまくいきませんでした。)VB.NETにはないのでしょうか。

  • Chartコントロールを使用してのグラフ描画につい

    Chartコントロールを初めて使用します。 VB.net(VB2012)でChartコントロールを使用してグラフを描画するアプリを作っています。 X軸に稼動日  1   2   3  ・・・・ Y軸に時間   1.5  1.0  2.75 ・・・・ 上記のようなデータで折れ線グラフを描くことはできたのですが グラフはそのままで、Y軸のラベル表示を実数から時間表示に変更することは 可能でしょうか? (例 1.5→1:30、 1.0→1:00、 2.75→2:45 ・・・) Y軸のLabelSyale.Formatプロパティを設定すればいいのかなと思いましたが 上手くいきません。 分かる方いらっしゃいましたら、ご教授下さい。宜しくお願いします。

  • チャートコントロール(MSChart)のフォント設定

    VB6.0でチャートコントロール(MSChart)を使いグラフを描画する事が出来ました。グラフを格好良くしようと思い背景を暗めの色にした所、グラフの文字が見えにくくなったため、フォントの変更を試みました。 縦横スケールのフォントは何とか変更することが出来たのですが、凡例のフォント設定が見つかりません。 ご存知の方いらっしゃいましたらご教授頂けないでしょうか。

  • VBでウインドウのサイズを変更できないようにする

    VB6でウインドウのサイズを変更できないようにしたいのですが、確かプロパティをFalseにすれば良いのですが、ど忘れてしましました。 何なのプロパティだったでしょうか? あと、VisualBasic6を使っているのですが、.NETに変えた方が良いのでしょうか?

  • TabControlとToolBarの背景色変更

    VB.Netで質問です。 TabContorolとToolBarの背景色の変更が出来ません。 プロパティウィンドウにはBackColorの項目がないので フォームのロード時にコーディングでBackColorを変更しているのですが変更されません。 背景色は変更できないのでしょうか? それとも何か変更する方法がありますでしょうか? ご存知の方いましたらご教授お願いします。

専門家に質問してみよう