Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2016, 17:42   #1
ozazat
Пользователь
 
Регистрация: 25.03.2016
Сообщений: 15
Вопрос Ссылка на объект не указывает на экземпляр объекта

Выдаёт следующую ошибку: "Ссылка на объект не указывает на экземпляр объекта". Как вы думаете, почему?
Код:
private Bitmap CreateBitmapImage(string imageText)
        {
            Bitmap bitmap = new Bitmap(1, 1);
            int width = 0;
            int height = 0;
            Font font = new Font("Times New Roman", 10, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Pixel);
            Graphics graphics = Graphics.FromImage(bitmap);
            width = (int)graphics.MeasureString(imageText, font).Width;
            height = (int)graphics.MeasureString(imageText, font).Height;
            bitmap = new Bitmap(bitmap, new Size(width, height));
            graphics = Graphics.FromImage(bitmap);
            graphics.Clear(Color.White);
            graphics.SmoothingMode = SmoothingMode.AntiAlias;
            graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
            graphics.DrawString(imageText, font, new SolidBrush(Color.FromArgb(102, 102, 102)), 0, 0);
            graphics.Flush();
            return (bitmap);
        }

        private void button1_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = this.CreateBitmapImage(textBox1.Text);
        }
ozazat вне форума Ответить с цитированием
Старый 10.04.2016, 17:43   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Где?
Видимо что-то null.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.04.2016, 17:45   #3
ozazat
Пользователь
 
Регистрация: 25.03.2016
Сообщений: 15
По умолчанию

Можно про null пояснить немного?

Ошибка после старта отладки выходит, в коде ошибок нет.

Последний раз редактировалось Alex11223; 10.04.2016 в 17:52.
ozazat вне форума Ответить с цитированием
Старый 10.04.2016, 17:52   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Код:
using System;

namespace ConsoleApplication39
{
    class Program
    {
        class MyClass
        {
            public int Something = 99;
        }

        static void Main(string[] args)
        {
            MyClass obj = null;
            Console.WriteLine(obj.Something);
        }
    }
}


Ну так при отладке обычно показывает где.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.04.2016, 17:57   #5
ozazat
Пользователь
 
Регистрация: 25.03.2016
Сообщений: 15
По умолчанию

Вот уж не знаю, у меня не показывает(

Ан-нет, прошу прощения, повнимательней посмотрел: в строчке
Код:
pictureBox1.Image = CreateBitmapImage(textBox1.Text);
жалуется на CreateBitmapImage. Что можно сделать? Исправить null? Как?

Последний раз редактировалось Alex11223; 10.04.2016 в 18:09.
ozazat вне форума Ответить с цитированием
Старый 10.04.2016, 18:08   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Странно, там вроде не откуда null взяться, разве что вы как-то вызываете этот код до InitializeComponent пока текстбокс еще не создан.

Ну или опять не туда посмотрели и на самом деле оно где-то в коде CreateBitmapImage, а не тут.

Поставьте breakpoint в отладчике и посмотрите значения переменных и т.п.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.04.2016, 18:21   #7
ozazat
Пользователь
 
Регистрация: 25.03.2016
Сообщений: 15
По умолчанию

Всё, посмотрел: null в font и graphics. И это нужно исправить? На что?
ozazat вне форума Ответить с цитированием
Старый 10.04.2016, 18:28   #8
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Странно, там не должно быть null, особенно в font. Точно посмотрели?

https://www.google.com/search?q=c%23+debugging
http://www.dotnetperls.com/debugging
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.04.2016, 18:36   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

при отладке там будет null если вы смотрите до присвоения(скажем вы стоите на первой строке)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.04.2016, 19:07   #10
ozazat
Пользователь
 
Регистрация: 25.03.2016
Сообщений: 15
По умолчанию

После совета Пепела Феникса, переменные начали выглядеть так, и нигде нет null:

Последний раз редактировалось Alex11223; 10.04.2016 в 19:10.
ozazat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ссылка на объект не указывает на экземпляр объекта. Таксист C# (си шарп) 2 23.07.2015 23:46
Ссылка на объект не указывает на экземпляр объекта. endorphin96 Помощь студентам 0 02.06.2015 17:10
ссылка на объект не указывает на экземпляр объекта miarida C# (си шарп) 3 27.05.2013 08:28
Ссылка на объект не указывает на экземпляр объекта. Kazbek17 C# (си шарп) 11 08.02.2012 18:56
Ссылка на объект не указывает на экземпляр объекта C++ Юля_ Помощь студентам 2 09.01.2012 16:04