Другие языки программирования и технологии
Доступ к полям другого класса. C# Подробно внутри!
Значит есть проект, кратко содержание: using System; //////////////// namespace DES_shift { public partial class Form1 : Form { } public class FileService { } } На форме есть ПрогресБар, в классе Form1 я спокойно могу меня атребуты ПрогресБара, но с class FileService НЕ РАБОТАЕТ: "Для нестатического поля, метода или свойства требуется ссылка на объект" Создание еземпляра класа результата не даст, с друзьями классами разобраться не смог, там вообще бред. Использование static невозможно. ЧТО ЖЕ ДЕЛАТЬ?
>Создание еземпляра класа результата не даст
Интересно, с чего бы?
> друзьями классами разобраться не смог
И не надо пока.
>Использование static невозможно
Возможно, но не нужно.
>ЧТО ЖЕ ДЕЛАТЬ?
Не паниковать, а почитать какой-нибудь учебник. Там умные люди пишут умные вещи. Например, что каждый класс желательно описывать в отдельном модуле и со своим неймспейсом. Что классы надо по мере надобности создавать и уничтожать. Как передать классу ссылку на объект определенного класса. В общем, подойди к вопросу системно, с наскока ничего не получится.
Интересно, с чего бы?
> друзьями классами разобраться не смог
И не надо пока.
>Использование static невозможно
Возможно, но не нужно.
>ЧТО ЖЕ ДЕЛАТЬ?
Не паниковать, а почитать какой-нибудь учебник. Там умные люди пишут умные вещи. Например, что каждый класс желательно описывать в отдельном модуле и со своим неймспейсом. Что классы надо по мере надобности создавать и уничтожать. Как передать классу ссылку на объект определенного класса. В общем, подойди к вопросу системно, с наскока ничего не получится.
До процесс бара можно дотянуться через ссылку на сам объект, например, :
на форме есть кнопка, вот её обработчик события:
private void button1_Click(object sender, EventArgs e)
{
Temp T = new Temp();
T.process(this);
}
Имеется класс, он меняет состояние процесс бара на форме (МОДИФИКАТОР ДОСТУПА ПРОЦЕСС БАРА ДОЛЖЕН БЫТЬ INTERNAL !!!)
public void process(Form1 F1)
{
F1.progressBar1.Value += 10;
}
на форме есть кнопка, вот её обработчик события:
private void button1_Click(object sender, EventArgs e)
{
Temp T = new Temp();
T.process(this);
}
Имеется класс, он меняет состояние процесс бара на форме (МОДИФИКАТОР ДОСТУПА ПРОЦЕСС БАРА ДОЛЖЕН БЫТЬ INTERNAL !!!)
public void process(Form1 F1)
{
F1.progressBar1.Value += 10;
}
Vitas Bieliauska
ужос
Тут без статика, как я понимаю, не обойтись. В Java такая проблема решалась именно им родимым.
ЗЫ: Хотя с СиШарпом не знаком, не буду утверждать, что все фатально.
ЗЫ: Хотя с СиШарпом не знаком, не буду утверждать, что все фатально.
Vitas Bieliauska
какая "такая" проблема? незнание что такое класс?
Создание еземпляра класа результата не даст
Мне кажется, Вы здесь ошибаетесь. Так как статичный класс это тот, который всего один - у него нет объектов. А Вам говорится что для нестатичного поля требуется ссылка на объект - следовательно, вам нужно создать экземпляр класса и уже через него через "." (точку) обращаться к его полям и методам. Не понимаю, почему Вы говорите что создание экземпляра результата не даст...
Мне кажется, Вы здесь ошибаетесь. Так как статичный класс это тот, который всего один - у него нет объектов. А Вам говорится что для нестатичного поля требуется ссылка на объект - следовательно, вам нужно создать экземпляр класса и уже через него через "." (точку) обращаться к его полям и методам. Не понимаю, почему Вы говорите что создание экземпляра результата не даст...
Валит Валитов
Не путайте абстрактный класс со статическим
Виталий Магер
Спасибо, разобрался, вроде должно получится.
Парат Паратов
Proff Dezmond, Использовать статические функции класса можно, не создавая самого экземпляра класса.
http://ru.wikipedia.org/wiki/Статический_класс
Мне кажется Вы немного запутались.
P.S. Автор разобрался :) Посмотрим в чем же проблема. :)
http://ru.wikipedia.org/wiki/Статический_класс
Мне кажется Вы немного запутались.
P.S. Автор разобрался :) Посмотрим в чем же проблема. :)
Похожие вопросы
- (delphi) Я заношу в массив ссылки на записи. Как получить доступ к полям записи?
- Делфи. Есть указатель типа PChar, он указывает на структуру, как получить доступ к полям этой структуры?
- Класс c++
- Для чего нужны статические классы? (C#)
- Серьёзный вопрос,более подробно внутри!!!
- помогите пожалуйста. подробно внутри
- Челендж на самый забавный код =) (C++ задача внутри) Не стесняемя, учавствуем.
- Помогите построить треугольник C++ ( См. внутри )
- Статичная функция внутри класса. какие данные будут доступны всем образцам класса?
- Есть ли ошибка? Может ли возникнуть? И вообще приемлимо ли? C++ классы