0 / 0 / 0
Регистрация: 07.02.2020
Сообщений: 14
1

Не ловит исключение

16.03.2020, 14:48. Показов 269. Ответов 0
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public override void Move(Point Pmax)
        {
            if (point.X > Pmax.X || point.Y > Pmax.Y)
            {
                throw new Exception("The figure is out of range : " + this.GetType() + "\n" + DateTime.Now);
            }
            else
            {
                var dx = Range.GetRandomFromRange(rnd, new Range(-5, -1), new Range(1, 5));
                var dy = Range.GetRandomFromRange(rnd, new Range(-5, -1), new Range(1, 5));
                if (point.X <= 0 || point.X >= Pmax.X)
                {
                    dx -= dx;
                }
                if (point.Y <= 0 || point.Y >= Pmax.Y)
                {
                    dy -= dy;
                }
                point.X += dx;
                point.Y += dy;
            }
        }
----------------
Вот функция ,которая кидает exception:
----------------
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
private void Exceptions_Paint(object sender, PaintEventArgs e)
        {
            Point maximumPointOfPB = new Point();
            maximumPointOfPB.X = this.Height;
            maximumPointOfPB.Y = this.Width;
            foreach (Figure fig in createdFigures)
            {
                fig.Draw(e.Graphics);
                try
                {
                    fig.Move(maximumPointOfPB);
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
----------------
Почему то, исключение не ловится, оно должно быть, когда я меняю размер формы, при выполнении программы. Если я уберу конструкцию try catch, программа выкинет ошибку о том что исключение не ловится, и выведет весь текст который описан в первой функции.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.03.2020, 14:48
Ответы с готовыми решениями:

Не ловит исключение в другом потоке
Thread thread = new Thread(cicle); thread.Start(); void cicle() { ...

Не ловит Exception а NumberFormatException ловит
Добрый день. Метод проверяющий строку на только цифры(работает): public boolean isNumber(String s)...

Iphone 6 не ловит Wi-Fi в другой комнате, а другой Iphone 5 ловит
Здравствуйте! Помогите, пожалуйста с проблемой. Iphone 6 ловит wi-fi только в комнате с роутером,...

Возникло необработанное исключение по адресу 0x73A62CF2: исключение Microsoft C++: std::bad_array_new_length
Доброго времени суток, уважаемые форумчане :) Подскажите начинающему программисту. Ругается на...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.03.2020, 14:48
Помогаю со студенческими работами здесь

Исключение EOleError. Как перехватить при удалении записи это исключение ?
Добрый день, Господа. Связал ключем справочник с майн-таблицей на уровне СУБД MySQL. При...

Explorer.exe Исключение неизвестное программное исключение в Windows XP, что делать?
Уже три месяца борюсь с ужасной заразой, всякий раз, когда я совершаю какое-либо действие, будь...

прохожу исключение не могу понять где ошибка. мне нужно сделать свое исключение
import java.io.*; public class student { public static void main(String args){ ...

Что я сделал не так?Возникло необработанное исключение по адресу 0x7434A9F2 : исключение Microsoft C++: std
//Калькулятор Intrigger #include&lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;string.h&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru