Top.Mail.Ru
Ответы

Программирование кнопок на C#.

Здравствуйте! Делаю программу на windows forms app на C#, наподобие paint, не могу найти код для кнопок: отменить и вернуть и ластик, когда рисуешь, спасибо за ответ!

Дополнен

Простите ещё, при закрытие, что бы показовслось, хотите ди вы сохраните пожалуйста 🙏

По дате
По рейтингу
Аватар пользователя
Мастер

Отмена

123456789101112
 private void btnUndo_Click(object sender, EventArgs e) 
{ 
    // Проверка, есть ли что отменять 
    if (history.Count > 0) 
    { 
        // Удаление последнего элемента из истории 
        history.RemoveAt(history.Count - 1); 
 
        // Обновление изображения на основе истории 
        UpdateImage(); 
    } 
} 

Вернуть

123456789101112131415
 private void btnRedo_Click(object sender, EventArgs e) 
{ 
    // Проверка, есть ли что возвращать 
    if (redoHistory.Count > 0) 
    { 
        // Добавление последнего элемента из истории redo в историю 
        history.Add(redoHistory[redoHistory.Count - 1]); 
 
        // Удаление последнего элемента из истории redo 
        redoHistory.RemoveAt(redoHistory.Count - 1); 
 
        // Обновление изображения на основе истории 
        UpdateImage(); 
    } 
} 

Ластик

123456789101112131415161718
 private void btnEraser_Click(object sender, EventArgs e) 
{ 
    // Изменение режима рисования на ластик 
    drawingMode = DrawingMode.Eraser; 
} 
 
// Обработчик события рисования 
private void pictureBox_MouseDown(object sender, MouseEventArgs e) 
{ 
    if (drawingMode == DrawingMode.Eraser) 
    { 
        // Рисование ластиком 
        using (Graphics g = pictureBox.CreateGraphics()) 
        { 
            g.FillEllipse(Brushes.White, e.X - eraserSize / 2, e.Y - eraserSize / 2, eraserSize, eraserSize); 
        } 
    } 
} 

Сохранение при закрытии

12345678910111213
 private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
{ 
    // Отображение диалогового окна сохранения 
    if (imageModified) 
    { 
        DialogResult result = MessageBox.Show("Сохранить изменения?", "Сохранение", MessageBoxButtons.YesNoCancel); 
        if (result == DialogResult.Yes) 
        { 
            // Сохранение изображения 
            SaveImage(); 
        } 
    } 
} 
Аватар пользователя
Искусственный Интеллект

Это всё несколько сложнее, чем просто найти готовый код. Тебе надо самостоятельно реализовать решение.