Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/48: Рейтинг темы: голосов - 48, средняя оценка - 4.98
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
1

Ждать, пока пользователь не введет значение (как в консоли)

24.01.2012, 12:11. Показов 9360. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
здравсвуйте, как в C# можно ждать событие? что нужно, есть форма, на ней 2 кнопки и текстбокс. по нажатию на первую кнопку выполняется некоторый код, потом программа ждет что пользователь введет некоторые данные и нажмет кнопку 2. То есть нужно сделать что то на подобие Console.Read();только в форме
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.01.2012, 12:11
Ответы с готовыми решениями:

Пользователь вводит ненулевые числа до тех пор, пока не введет ноль. Найдите сумму этих чисел
Здравствуйте. Пишу программу, вот условие: Пользователь вводит ненулевые числа до тех пор, пока не...

Как заставить один поток ждать, пока работает другой
Здравствуйте, стоит такая задача: есть public static bool forks = new bool;// false - свободна...

Ждать пока выпониться CMD
Process proc4 = new Process(); proc4.StartInfo.FileName = @"Настройки/REG/REG.bat"; ...

Запрашивать числа и суммировать,пока пользователь не введет 0
Помогите пожалуйста составить блок-схемы к 2-м похожим задачкам. 1 Запрашивать числа и...

11
Эксперт Java
4091 / 3825 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
24.01.2012, 12:15 2
делаешь boolean поле = false.
При нажатия на кнопку 1, выполняется код. устанавливаешь поле в true.
При нажатии на кнопку 2, проверяешь введено ли что-нибудь в textbox и проверяешь значение булевского поля: если что-то не заполнено - ничего не делаешь
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
24.01.2012, 12:28  [ТС] 3
дело в том, что пользователь вводит данные уже после нажатия на кнопку 1, точнее после нажатия на кнопку 1 запускается цикл, в котором при определенных значениях пользователь должен вводить данные и нажимать на кнопку 2.
0
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
24.01.2012, 12:45 4
А что если сделать TextBox и button2 недоступными до нажатия button1, а при нажатии button2 проверять TextBox на предмет текста. Или, у TextBox'a есть событие "Ввод текста" так вот, в нем сделать button2 доступной

Добавлено через 12 минут
Вот нашел:
C#
1
2
3
4
5
private void textBox1_TextChanged(object sender, EventArgs e)
{
    if (textBox1.Text != null)
         button2.Enabled = true;
}
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
24.01.2012, 12:46  [ТС] 5
да, так и делаю. но сложность то совсем не в этом в TextBox может и совсем ничего не быть и это допустимо. Сложность как приостановить выполнение кода в button1 пока не будет нажата button2
0
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
24.01.2012, 12:49 6
Что вообще программа делает? Пример кода покажите пожалуйста, я что-то вас несовсем понимаю. Уберите часть кода на button2
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
24.01.2012, 12:54  [ТС] 7
C#
1
2
3
4
5
6
7
8
9
10
11
12
private void button1_Click(object sender, EventArgs e)
{
    string s;
    richTextBox1.Enabled = true;
    button2.Enabled = true;
    //здесь нужно ждать нажатие на button2
    s = richTextBox1.Text;
    richTextBox1.Clear();
    richTextBox1.Enabled = false;
    button2.Enabled = false;
             .....
}
0
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
24.01.2012, 13:08 8
А почему бы не переместить часть кода в button2 ?
C#
1
2
3
4
5
6
7
private void button2_Click(object sender, EventArgs e)
{
    s = richTextBox1.Text;
    richTextBox1.Clear();
    richTextBox1.Enabled = false;
    button2.Enabled = false;
}
А зачем вообще тогда button1 если она лишь открывает доступ к 2ум элементам???

C#
1
2
3
4
5
6
7
private void button1_Click(object sender, EventArgs e)
{
    //Или тут ещё есть код?
    string s;
    richTextBox1.Enabled = true;
    button2.Enabled = true;
}
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
24.01.2012, 14:01  [ТС] 9
Решил через костыль, создал вторую форму, на нее вынес richTextBox и button2

в button1 пишем form2.ShowDialog(); где нужно ждать нажатия на кнопку 2;
для кнопки 2 пишем Close();
0
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
24.01.2012, 14:07 10
Ясно, ну это выход. А чтовообще программа делает, если не секрет?
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
24.01.2012, 14:30  [ТС] 11
пишу интерпретатор, обработку оператора scan не мог сделать
0
79 / 79 / 12
Регистрация: 07.01.2012
Сообщений: 167
24.01.2012, 15:42 12
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            button2.Enabled = false;
            richTextBox1.ReadOnly = true;
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            // do something
            richTextBox1.ReadOnly = false;
        }
 
        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {
            bool youTextRules=GetResultForRulesCheck(richTextBox1.Text);
 
            if (youTextRules)
            {
                //do something
                button2.Enabled = true;
            }
 
        }
 
        private bool GetResultForRulesCheck(string textChecked)
        {
            bool resultCheck=false;
            if(textChecked.Length>20)//пример правила, проверяет длину введенной строки 
            {                        
                resultCheck=true;
            }
 
            return resultCheck;
        }
        
    }
0
24.01.2012, 15:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2012, 15:42
Помогаю со студенческими работами здесь

Организовать бесконечный цикл, пока пользователь не введет правильное число
Напишите приложение, которое принимает от пользователя некоторое число (например, трехзначное). Оно...

Запрос у пользователя чисел до тех пор, пока пользователь не введет 0
Напишите программу, которая бы запрашивала у пользователя числа до тех пор, пока пользователь не...

Программа не должна завершаться пока пользователь не введет все числа правильно
Ребят, помогите новичку написать простенькую програму. Составить программу в которой пользователь...

Сделать так, чтобы пока пользователь не введет капчу и не нажмет на кнопку, процесс не продолжался
Я получил капчу с сайта и вывел ее в image ...


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

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