6
나는 내 양식에 차트를 만들었습니다.차트의 점수 값을 찾습니다
사용자가 해당 부분을 클릭하여 풍선의 각 부분에있는 value
, x_value
및 y_value
을 볼 수있게하려고합니다.
사용자가 마우스를 움직이면 ballon shoud가 사라집니다.
어떻게하면됩니까?
나는 내 양식에 차트를 만들었습니다.차트의 점수 값을 찾습니다
사용자가 해당 부분을 클릭하여 풍선의 각 부분에있는 value
, x_value
및 y_value
을 볼 수있게하려고합니다.
사용자가 마우스를 움직이면 ballon shoud가 사라집니다.
어떻게하면됩니까?
당신이 뭔가를 할 수 있습니다 :
ToolTip tooltip = new ToolTip();
Point? clickPosition = null;
void chart1_MouseMove(object sender, MouseEventArgs e)
{
if (clickPosition.HasValue && e.Location != clickPosition)
{
tooltip.RemoveAll();
clickPosition = null;
}
}
void chart1_MouseClick(object sender, MouseEventArgs e)
{
var pos = e.Location;
clickPosition = pos;
var results = chart1.HitTest(pos.X, pos.Y, false,
ChartElementType.PlottingArea);
foreach (var result in results)
{
if (result.ChartElementType == ChartElementType.PlottingArea)
{
var xVal = result.ChartArea.AxisX.PixelPositionToValue(pos.X);
var yVal = result.ChartArea.AxisY.PixelPositionToValue(pos.Y);
tooltip.Show("X=" + xVal + ", Y=" + yVal,
this.chart1, e.Location.X,e.Location.Y - 15);
}
}
}
결과 :
편집 :
마우스 이동, 당신은을 사용할 수 있습니다 때마다 툴팁을 보여 다음 코드 :
Point? prevPosition = null;
ToolTip tooltip = new ToolTip();
void chart1_MouseMove(object sender, MouseEventArgs e)
{
var pos = e.Location;
if (prevPosition.HasValue && pos == prevPosition.Value)
return;
tooltip.RemoveAll();
prevPosition = pos;
var results = chart1.HitTest(pos.X, pos.Y, false,
ChartElementType.PlottingArea);
foreach (var result in results)
{
if (result.ChartElementType == ChartElementType.PlottingArea)
{
var xVal = result.ChartArea.AxisX.PixelPositionToValue(pos.X);
var yVal = result.ChartArea.AxisY.PixelPositionToValue(pos.Y);
tooltip.Show("X=" + xVal + ", Y=" + yVal, this.chart1,
pos.X, pos.Y - 15);
}
}
}
차트의 모든 위치에 툴팁이 표시됩니다. 마우스가 시리즈 지점 근처에있을 때만 표시하려면 mschart 기능을 사용할 수 있습니다. :
yourSeries.ToolTip = "X=#VALX, Y=#VALY";
(더 예 here)
감사 lot.When 프로젝트 아무것도 실행하지 것은 나를 위해 occures. mouse_Move 및 mouse_Click 메서드가 실행되고 있지 않습니다. 차트에 어떤 것을 추가해야합니까? 예 : "chart1.Mouseclick .....". 나는 차트를 다이나믹하게 만들었다. –
내 마지막 문제가 해결되었습니다. 잘되었습니다. 다른 질문 : mouse_hover를 사용하려면 어떻게해야합니까? 사용자가 마우스를 가리켜 값을 볼 수 있도록 코드를 변경할 수 있습니까? –
@AsmaGood : 내 편집을 확인하십시오. – digEmAll