Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как вставить текст в PictureBox

327
28 мая 2013 года
UserNet2008
748 / / 03.04.2010
Меня заинтересовала тема пользывателя HTTP.
Примерно ~12-15 лет назад мне надо было создать программу для вставки текста(1 в1) в pictureBox.
Раньше для этого надо были танцы с бубном. Т.е API функции , которые не работали должным образом. Опускаю детали, но честно сказать очень было геморно.

Сейчас имея VS2010 и C# всё просто(ну, я так думаю).
Типа отмазки в этом коде нет обработчика ошибок или вот на скорую руку.
Предлагаю код, который каждый пользователь может переделать для себя.

[Form1_Paint] - Это печатаем на форме.
[pictureBox1_Paint] - Это печатаем на картинке(pictureBox).
[pictureBox2_Paint] - Это печатаем на фоне(pictureBox).

Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace cshTempo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
            e.Graphics.DrawString("arbeiten", new Font("Cambria", 48), Brushes.Black, new PointF(0, 0));
        }

        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            label1.Visible = true;//скрыть Label1 - false
            label1.Text = "UserNet2008";
            pictureBox1.Size = label1.Size;
            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
            e.Graphics.DrawString(label1.Text, new Font("Cambria", 48), Brushes.Black, new PointF(0, 0));
        }

        private void pictureBox2_Paint(object sender, PaintEventArgs e)
        {
            label1.Visible = true;//скрыть Label1 - false
            label1.Text = "UserNet2008";
            pictureBox2.Size = label1.Size;
            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
            e.Graphics.DrawString(label1.Text, new Font("Cambria", 48), Brushes.Black, new PointF(0, 0));
        }
    }
}

На форме мы видим:
a) напечатано на форме.
b) напечатано label1
c) напечатано в pictureBox1 - картинка
d) напечатано в pictureBox2 - фон


Ну вроде так.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог