Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
4 / 4 / 1
Регистрация: 25.10.2012
Сообщений: 218
1

Разъясните ошибку

28.07.2015, 18:37. Показов 2272. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня есть форма, которая является наследником класса Level.
В классе Level есть функции которые работают с компонентами/полями этой формы.
Для примера, в классе Level есть поле
C#
1
public int left_items
это же поле есть и на моей главной форме, но проблемка в том, что студия дает варнинг на это, с таким текстом:
Warning 3 'Form.left_items' hides inherited member 'Level.left_apple'. Use the new keyword if hiding was intended.
Та же проблема с таймером, он есть и в классе и на форме, соответственно с одинаковыми именами, чтобы функция могла работать. Но в Designer получаю это:
Message 1 Duplicate component name 'timer_game_time'. Component names must be unique and case-insensitive. 0 0
Переименовывать их не вариант, т.к. у меня будет несколько форм и чтобы все они работали от одной функции нужно имя оставить такое. Но что делать с варнингами?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.07.2015, 18:37
Ответы с готовыми решениями:

Разъясните приведенный код
List<CheckBox> check = panel1.Controls.OfType<CheckBox>().Where(x => x.Checked == true).ToList();...

Разъясните код пжлст(выдает ошибку:cannot convert from 'class std::list<class c_bullet *,class std::allocator<class c_bullet *> >::iterator' to 'int')
Есть такие строки: std::list&lt;c_bullet*&gt; Bullets; ... for(auto i = Bullets.begin(); i !=...

Разъясните задание
Сформировать динамический массив, состоящий из динамических строк. (Это я понял как сделать). Но...

Списки разъясните
Совсем недавно начал изучать списки и всё никак не могу понять, как их реализовывать правильно в...

2
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
28.07.2015, 18:57 2
Уберите переменную из класса Level.
0
Эксперт .NET
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
28.07.2015, 19:18 3
xAndeRx,
никто на этот вопрос точно ответить не сможет, т.к. никто не видит структуры классов, не знает как будут классы взаимодействовать.
Вообще, вопросы наследования и полиморфизма широки и многогранны.
Мне, например, в отличие от tarasalk, кажется, что повторяющиеся поля нужно убрать из производных классов.
Что бы ничего не менять, а просто убрать предупреждения, нужно при описании полей производного класса добавлять слово new, т.е.
C#
1
public new int left_items;
правда при этом для объекта производного класса по ссылке на объект базового класса будет вызывается метод базового класса.

Добавлено через 1 минуту
Хотя и без new будет происходить тоже самое
0
28.07.2015, 19:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.07.2015, 19:18
Помогаю со студенческими работами здесь

Разъясните код
Нашел в интернете код, который авторизовывается на mail.ru import urllib.parse, http.cookiejar...

Разъясните код
Здравствуйте! Расскажите, пожалуйста, что обозначает это, почему вообще так пишется: #define...

Разъясните программу
Программа должна в принципе пересекать конус с цилиндром (подробности...

Разъясните скрипт
Господа помогите разобраться в перле, вопросы будут до жути нубские. Вот скрипт разбора логов,...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru