Login
Вопрос по С#
NEW 29.08.09 13:15
Подскажите пожалуйста как можно написать программу на С# по нижеследующей картинке. В общем нужно при нажатии на кнопку Start пошел прогресс от 0 до 100%( Progress-Bar), а внизу чтобы при этом шли цифрами количество процентов(Label). И нужно чтобы в то время пока идет прогресс(и соответственно проценты) нельзя бы былобы его остановить кнопками (Button) "Start" и "Zuruecksetzen". А с помощью кнопки "Schlissen" все это дело закрыть.
NEW 29.08.09 15:05
in Antwort monstrello72 29.08.09 13:15
все очень просто, вставь в проект таймер, изначально его отключив,
в нем можно создать евентфункцию "тик",
сделать чтоб тик вызывался например каждую секунду.
когда давиш на кнопку старт запускаеш таймер и обнуляеш счетчик.
и enable = false на соответсвующие кнопки.
каждый раз когда будет тик инкрементируеш счетчик,
изменяеш Progress-Bar, выводиш проценты и если счетчк дошел до максимума.
то останавливаеш таймер, счетчик и разрешаеш давить на все кнопки
как то так... удачи!
в нем можно создать евентфункцию "тик",
сделать чтоб тик вызывался например каждую секунду.
когда давиш на кнопку старт запускаеш таймер и обнуляеш счетчик.
и enable = false на соответсвующие кнопки.
каждый раз когда будет тик инкрементируеш счетчик,
изменяеш Progress-Bar, выводиш проценты и если счетчк дошел до максимума.
то останавливаеш таймер, счетчик и разрешаеш давить на все кнопки
как то так... удачи!
все что вы сделаете в интернете может быть использовано против вас!
NEW 29.08.09 15:12
in Antwort viger2 29.08.09 15:05
Я не знаю как вообще в виде кода запустить Progress и Проценты( как это в виде кода сделать). Конечно спасибо, но нельзя быбыло это сделать в виде кода( я новичек в программировании)
NEW 29.08.09 15:15
in Antwort monstrello72 29.08.09 15:12
Я не знаю как вообще в виде кода запустить Progress и Проценты( как это в виде кода сделать).
-----
Progress запускать не надо. Он всего лишь отрисовывает что ему задано - смотри минимальное, максимальное и текущее значение.
Ну а по поводу Процентов - это в школу, в 5-й класс...
-----
Progress запускать не надо. Он всего лишь отрисовывает что ему задано - смотри минимальное, максимальное и текущее значение.
Ну а по поводу Процентов - это в школу, в 5-й класс...

NEW 29.08.09 15:23
in Antwort monstrello72 29.08.09 15:12
в виде кода, немогу сорри, нет времени...
у прогрессбара есть имя свойсва, их можно редактировать в самом ГУИ дизайнере,
например начальное и максимальное значение.
а также с ними можно "общатся" из кода (если конечно код имеет право допуска)
в коде вводиш имя потом точку и автоматически паказываются все публичные переменные
и функции этого класса. Выбираеш там "value" кажется и туда пишеш проценты...
у прогрессбара есть имя свойсва, их можно редактировать в самом ГУИ дизайнере,
например начальное и максимальное значение.
а также с ними можно "общатся" из кода (если конечно код имеет право допуска)
в коде вводиш имя потом точку и автоматически паказываются все публичные переменные
и функции этого класса. Выбираеш там "value" кажется и туда пишеш проценты...
все что вы сделаете в интернете может быть использовано против вас!
NEW 29.08.09 18:23
in Antwort viger2 29.08.09 15:23
Вот что я накопал в Hilfe,мой ProgressBar называется (Name)Progress. Проценты идут так: нажимаю Start , и примерно через секунд 30 (не бежит от 1 до 100) появляется 100. Подправьте пожалуйста где что не так( а Прогресс вообще не бежит)
private void Start_Click(object sender, EventArgs e)
{
Progress1.Visible = true;
Progress1.Minimum = 1;
Progress1.Maximum = Progress.100;
Progress1.Value = 1;
Progress1.Step = 1;
for (int i = 1; i <= Progress.100; i++);
{
System.Threading.Thread.Sleep(100);
Prozent.Text = i.ToString();
if (CopyFile(Progress[i - 1]) == true);
Progress1->PerformStep();
}
}
private void Start_Click(object sender, EventArgs e)
{
Progress1.Visible = true;
Progress1.Minimum = 1;
Progress1.Maximum = Progress.100;
Progress1.Value = 1;
Progress1.Step = 1;
for (int i = 1; i <= Progress.100; i++);
{
System.Threading.Thread.Sleep(100);
Prozent.Text = i.ToString();
if (CopyFile(Progress[i - 1]) == true);
Progress1->PerformStep();
}
}
NEW 29.08.09 18:51
in Antwort monstrello72 29.08.09 18:23
NEW 29.08.09 19:12
А как это сделать?
in Antwort viger2 29.08.09 15:05
В ответ на:
в нем можно создать евентфункцию "тик",
сделать чтоб тик вызывался например каждую секунду.
в нем можно создать евентфункцию "тик",
сделать чтоб тик вызывался например каждую секунду.
А как это сделать?
NEW 29.08.09 19:27
in Antwort monstrello72 29.08.09 19:08
А не, ошибся. Progress1.PerformStep(); обновляет.
А вот это тебе все и портит.
for (int i = 1; i <= Progress.100; i++);
Ты на каком языке вообще пишешь?
А вот это тебе все и портит.
for (int i = 1; i <= Progress.100; i++);
Ты на каком языке вообще пишешь?
NEW 29.08.09 19:45
in Antwort monstrello72 29.08.09 19:39
NEW 29.08.09 19:53
in Antwort NightWatch 29.08.09 19:45
Я точно не знаю ,т.к. нашел этот вариант в разделе помощи в Visual C#. Может подскажешь как правильно это сделать?
NEW 29.08.09 20:20
in Antwort monstrello72 29.08.09 19:53
Дык, научись копировать тогда msdn.microsoft.com/en-us/library/system.windows.forms.progressbar.perform...
NEW 29.08.09 20:32
in Antwort NightWatch 29.08.09 20:20
А что писать вместо pBar1,filenames,CopyFile
NEW 29.08.09 20:40
in Antwort monstrello72 29.08.09 20:32
NEW 29.08.09 20:51
in Antwort NightWatch 29.08.09 20:40
Насколько я понял pBar1-это имя моего ProgressBar, а Length это как я понял :100 А вот про filenames я ничего там не понял может подскажешь?
NEW 29.08.09 21:48
in Antwort monstrello72 29.08.09 18:23
короче както так...
private void Start_Click(object sender, EventArgs e)
{
Progress1.Visible = true;
Progress1.Minimum = 1;
Progress1.Maximum = 100;
Progress1.Value = 1;
Progress1.Step = 1;
for (int i = 1; i <= 100; i++);
{
System.Threading.Thread.Sleep(100);
Prozent.Text = i.ToString();
//if (CopyFile(Progress[i - 1]) == true); // нафиг ненужно
//Progress1->PerformStep(); // нафиг ненужно
Progress1.Value = i ;
}
}
private void Start_Click(object sender, EventArgs e)
{
Progress1.Visible = true;
Progress1.Minimum = 1;
Progress1.Maximum = 100;
Progress1.Value = 1;
Progress1.Step = 1;
for (int i = 1; i <= 100; i++);
{
System.Threading.Thread.Sleep(100);
Prozent.Text = i.ToString();
//if (CopyFile(Progress[i - 1]) == true); // нафиг ненужно
//Progress1->PerformStep(); // нафиг ненужно
Progress1.Value = i ;
}
}
все что вы сделаете в интернете может быть использовано против вас!
NEW 29.08.09 21:58
что именно?
в дизайнере ГУИ есть "Tools", там же где ты "брал для рисования" кнопки или процессбар и т.д.
там есть таймер, его заносиш в ГУИ, он появится правда снизу под самой формой,
потом давиш на него правой кнопкой мышки и выбираеш "проперти" (в немецкой версии кажется Eigenschaft)
в проперти есть две таб свойства и функции, давиш на функции и там допельклик на "тик"
www.c-sharpcorner.com/UploadFile/mahesh/WorkingwithTimerControlinCSharp11...
in Antwort monstrello72 29.08.09 19:08
В ответ на:
а как это сделать?
а как это сделать?
что именно?
в дизайнере ГУИ есть "Tools", там же где ты "брал для рисования" кнопки или процессбар и т.д.
там есть таймер, его заносиш в ГУИ, он появится правда снизу под самой формой,
потом давиш на него правой кнопкой мышки и выбираеш "проперти" (в немецкой версии кажется Eigenschaft)
в проперти есть две таб свойства и функции, давиш на функции и там допельклик на "тик"
www.c-sharpcorner.com/UploadFile/mahesh/WorkingwithTimerControlinCSharp11...
все что вы сделаете в интернете может быть использовано против вас!