Как использовать событие нажатия клавиши и поместить график в ту же форму в C#?
Я новичок в C# и создаю приложение, которое может делать диаграмму, а также использовать ключевое событие в той же форме. Но когда я запускаю приложение, keyevent не работает, я не знаю, почему не работает.
Я буду очень признателен за любую помощь в решении моего вопроса, спасибо!
Что я уже пробовал:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Second_ver { public partial class Form1 : Form { public Form1() { InitializeComponent(); sphere.Visible = true; anillo_arriba.Visible = false; anillo_abajo.Visible = false; simulation.Visible = true; contador(); KeyPreview = false; } //Keypress event private void Form1_KeyPress(object sender, KeyPressEventArgs e) { //Variable for the moviment of the pictures int up_down, left_right; left_right = sphere.Location.X; up_down = sphere.Location.Y; if (e.KeyChar == 119) { //Wich picture is able to see sphere.Visible = false; anillo_arriba.Visible = true; anillo_abajo.Visible = false; //Points that are going to move the picture anillo_abajo.Location = new Point(left_right, up_down - 5); anillo_arriba.Location = new Point(left_right, up_down - 5); sphere.Location = new Point(left_right, up_down - 5); } if (e.KeyChar == 115) { //Wich picture is able to see sphere.Visible = false; anillo_arriba.Visible = false; anillo_abajo.Visible = true; //Points that are going to move the picture anillo_abajo.Location = new Point(left_right, up_down + 5); anillo_arriba.Location = new Point(left_right, up_down + 5); sphere.Location = new Point(left_right, up_down + 5); } double function(double x) { return (Math.Sin(x)); //Función de gráfica } chart1.ChartAreas[0].AxisY.ScaleView.Zoom(-10, 10); //Escala en Y chart1.ChartAreas[0].AxisX.ScaleView.Zoom(-5, 5);//Escala en X chart1.ChartAreas[0].CursorX.IsUserEnabled = true; chart1.ChartAreas[0].CursorY.IsUserEnabled = true; chart1.ChartAreas[0].CursorX.IsUserSelectionEnabled = true; chart1.ChartAreas[0].CursorY.IsUserSelectionEnabled = true; chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = true; for (int i = -10; i < 10; i++) { chart1.Series[0].Points.AddXY(i, function(i)); chart1.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Point; } } } }
Graeme_Grant
Точки останова-это мощный инструмент для понимания вашего собственного кода и кода других. Это называется "отладка". Вот видео, которое покажет вам, как отлаживать ваш код: Базовая отладка с помощью Visual Studio 2010-YouTube[^]