Member 12457690 Ответов: 2

Как скопировать то, что сделано на моем компьютере.окна.форм.панель к TextBox


Внутри свойств panel1_MouseMove находится следующий код: C#

private void panel1_MouseMove(object sender, MouseEventArgs e)
{
    if (paint) 
    {
        color = new SolidBrush(Color.Black);
        Graphics g = panel1.CreateGraphics();
        g.FillEllipse(color, e.X, e.Y, 10, 10);

        //e is the mouse, in this case e.X is the current X Position of the mouse, and same with Y Position.
        g.Dispose();
    }
}

Приведенный выше код позволяет мне использовать панель в качестве поверхности для рисования, как это сделали бы вы, если бы
вы используете Microsoft Paint.

То, что я пытаюсь сделать, это скопировать в текстовое поле то, что я нарисовал в
panel1 на форму во время выполнения программы.

Что я уже пробовал:

Я пробовал textbox1. Text = textbox1. Text + panel1.Задний цвет;

Единственное, что переносится на текст, - это цвет (Control).

Мне нужно, чтобы то, что я нарисовал на панели 1 в форме во время выполнения, было перенесено на
текстовое поле 1.

Ralf Meier

Извините... что вы хотите скопировать из панели в текстовое поле ?
Вы хотите добавить изображение, которое вы нарисовали на панели в качестве Backgroundimage, в текстовое поле ? - Если да, то вы должны создать свое собственное настраиваемое текстовое поле ...
Или вы нарисовали (например) букву "А" и хотите, чтобы текстовое поле распознало это изображение как текст ? - Если да, то вам нужно OCR-программное обеспечение, которое сделает это за вас ...

Вы должны быть более конкретны ...

2 Ответов

Рейтинг:
1

Graeme_Grant

[не тестировать]

Вы можете использовать слои. Установите фон текстового поля прозрачным и поместите его поверх другой панели. Затем вы устанавливаете эту панель в соответствии с той панелью, на которой вы рисуете.


Member 12457690

Можете ли вы продемонстрировать свою точку зрения при использовании слоев? Код, Пожалуйста, Спасибо.

Graeme_Grant

Положите один элемент управления на другой. Текстовое поле в верхней части 2-й панели. Фон текстового поля установлен на прозрачный, так что вы можете видеть 2-ю панель под ним.

Рейтинг:
0

Michael_Davies

Простой ответ заключается в том, что это невозможно, элемент управления TextBox предназначен только для обработки текста, поэтому буквальный текст свойства BackColor записывается в поле.