C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 131 を表示中)
■77321 / )  Re[2]: Chartでマウスと共に移動する十字線
□投稿者/ shu (783回)-(2015/10/07(Wed) 15:01:42)
こんなんでどうでしょう?

    Private _mp As Point
    Private Sub Chart1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Chart1.MouseMove
        _mp = e.Location
        Chart1.Invalidate()
    End Sub

    Private Sub Chart1_PostPaint(sender As Object, e As System.Windows.Forms.DataVisualization.Charting.ChartPaintEventArgs) Handles Chart1.PostPaint
        Dim g = e.ChartGraphics.Graphics

        '---> 既存の処理
        '<--- 既存の処理

        Dim axx = Chart1.ChartAreas(0).AxisX
        Dim axy = Chart1.ChartAreas(0).AxisY
        Dim x1 = axx.ValueToPixelPosition(axx.Minimum)  'グラフ領域右端のX座標
        Dim y1 = axy.ValueToPixelPosition(axy.Maximum)  'グラフ領域上部のY座標
        Dim x2 = axx.ValueToPixelPosition(axx.Maximum)  'グラフ領域左端のX座標
        Dim y2 = axy.ValueToPixelPosition(axy.Minimum)  'グラフ領域下部のY座標
        g.DrawLine(Pens.Gold, _mp.X, CInt(y1), _mp.X, CInt(y2))
        g.DrawLine(Pens.Gold, CInt(x1), _mp.Y, CInt(x2), _mp.Y)
    End Sub

返信 編集キー/


管理者用

- Child Tree -