Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
2 / 2 / 3
Регистрация: 22.11.2013
Сообщений: 114

Не меняется свойство Enabled у TextBox

23.03.2016, 23:16. Показов 2778. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет. Есть программа с пятью radioButton, при запуске требуется выбрать поле с помощью radioButton, после выполнении вычислений, Второй раз выбрать поле не удаётся. При активации все поля закрыты.
Как сделать что бы активировались они и после активации другой?


0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.03.2016, 23:16
Ответы с готовыми решениями:

Свойство Enabled Компонента Button должно зависеть от заполненности TextBox
Вод отрезок из кода: if ((textBox1.Text.Length > 0) & (textBox2.Text.Length > 0)) { button1.Enabled = true;} Форма...

свойство enabled
Как обратиться к свойству enabled и изменять его у объекта qgraphicview?

свойство Enabled
Задача в следующем: нужно чтобы при щелчке свойтво объекта textBox1_Text становилось false, а при повторном щелчке возвращалась в true. я...

5
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
23.03.2016, 23:46
контрол.Enabled = true;
0
2 / 2 / 3
Регистрация: 22.11.2013
Сообщений: 114
23.03.2016, 23:49  [ТС]
Подскажи плиз где именно?
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication1
{
    public partial class Треугольник : Form
    {
        public Треугольник()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            textBox1.Enabled = true;
            textBox2.Enabled = true;
            textBox3.Enabled = true;
            textBox4.Enabled = true;
            textBox5.Enabled = true;
 
            if (radioButton1.Checked == true)
            {
                
                double a, s, h, v, r;
                a = Convert.ToInt32(textBox1.Text);
                s = (a * a) * Math.Sqrt(3) / 4;
                h = a * Math.Sqrt(3) / 2;
                v = a * Math.Sqrt(3) / 6;
                r = a * Math.Sqrt(3) / 3;
                textBox2.Text = s.ToString();
                textBox3.Text = h.ToString();
                textBox4.Text = v.ToString();
                textBox5.Text = r.ToString();
 
            }
 
            if (radioButton2.Checked == true)
            {
                
                double a, s, h, v, r;
                s = Convert.ToInt32(textBox2.Text);
                a = Math.Sqrt((4 * s) / Math.Sqrt(3));
                h = a * (Math.Sqrt(3) / 2);
                v = a * (Math.Sqrt(3) / 6);
                r = a * (Math.Sqrt(3) / 3);
                textBox1.Text = a.ToString();
                textBox3.Text = h.ToString();
                textBox4.Text = v.ToString();
                textBox5.Text = r.ToString();
            }
            if (radioButton3.Checked == true)
                
            {
                double a, s, h, v, r;
                h = Convert.ToInt32(textBox3.Text);
                a = (2 * h) / Math.Sqrt(3);
                s = (a * a) * (Math.Sqrt(3) / 4);
                v = a * (Math.Sqrt(3) / 6);
                r = a * (Math.Sqrt(3) / 3);
                textBox1.Text = a.ToString();
                textBox2.Text = s.ToString();
                textBox4.Text = v.ToString();
                textBox5.Text = r.ToString();
                
            }
            if (radioButton4.Checked == true)
            {
                double a, s, h, v, r;
                v = Convert.ToInt32(textBox4.Text);
                a = (6 * v) / (Math.Sqrt(3));
                s = (a * a) * ((Math.Sqrt(3) / 4));
                r = a * ((Math.Sqrt(3) / 3));
                h = a * ((Math.Sqrt(3) / 2));
                textBox1.Text = a.ToString();
                textBox2.Text = s.ToString();
                textBox3.Text = h.ToString();
                textBox5.Text = r.ToString();
            }
            {
                if (radioButton5.Checked == true)
                {
                    double a, s, h, v, r;
                    r = Convert.ToInt32(textBox5.Text);
                    a = (3 * r) / Math.Sqrt(3);
                    s = (a * a) * (Math.Sqrt(3) / 4);
                    h = a * (Math.Sqrt(3) / 2);
                    v = a * (Math.Sqrt(3) / 6);
                    textBox1.Text = a.ToString();
                    textBox2.Text = s.ToString();
                    textBox3.Text = h.ToString();
                    textBox4.Text = v.ToString();
                }
            }
        }
 
        private void label1_Click(object sender, EventArgs e)
        {
 
        }
 
        private void label5_Click(object sender, EventArgs e)
        {
 
        }
 
        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
 
            textBox2.Enabled = false;
            textBox3.Enabled = false;
            textBox4.Enabled = false;
            textBox5.Enabled = false;
        }
 
        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {
            textBox1.Enabled = false;
            textBox3.Enabled = false;
            textBox4.Enabled = false;
            textBox5.Enabled = false;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            textBox1.Clear();
            textBox2.Clear();
            textBox3.Clear();
            textBox4.Clear();
            textBox5.Clear();
        }
 
        private void radioButton3_CheckedChanged(object sender, EventArgs e)
        {
            textBox1.Enabled = false;
            textBox2.Enabled = false;
            textBox4.Enabled = false;
            textBox5.Enabled = false;
        }
 
        private void radioButton4_CheckedChanged(object sender, EventArgs e)
        {
            textBox1.Enabled = false;
            textBox2.Enabled = false;
            textBox3.Enabled = false;
            textBox5.Enabled = false;
        }
 
        private void radioButton5_CheckedChanged(object sender, EventArgs e)
        {
            textBox1.Enabled = false;
            textBox2.Enabled = false;
            textBox3.Enabled = false;
            textBox4.Enabled = false;
        }
    }
}
0
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
23.03.2016, 23:54
князь99, Ох ты ж
Обработчики события все CheckedChanged уберите
0
2 / 2 / 3
Регистрация: 22.11.2013
Сообщений: 114
23.03.2016, 23:59  [ТС]
Блин) Я всё ровно не понял что именно((
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
24.03.2016, 00:51
князь99,
имеется в виду, что обработчики CheckedChanged (строки 117-132 и 143-165) не нужны, вернее в таком виде не нужны, ибо срабатывают как на включение так и на отключение и в итоге при переключении RadioButton'ов срабатывают 2 обработчика, отключающие все текстбоксы.
Конечно лучше было бы использовать UserControl'ы, но попробуйте такой вариант:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
RadioButton[] rbs;
TextBox[] tbs;
private void Form1_Load(object sender, EventArgs e)
{
    rbs = new RadioButton[]{ radioButton1, radioButton2, radioButton3, radioButton4, radioButton5 };
    tbs = new TextBox[] { textBox1, textBox2, textBox3, textBox4, textBox5 };
    foreach (RadioButton rb in rbs)
    {
        rb.CheckedChanged += new EventHandler(rb_CheckedChanged);
    }
}
 
void rb_CheckedChanged(object sender, EventArgs e)
{
    for (int i = 0; i < rbs.Length; i++)
    {
        tbs[i].Enabled = rbs[i].Checked;
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.03.2016, 00:51
Помогаю со студенческими работами здесь

Обмен опытом: свойство Enabled
Приветствую. Хотел бы обменяться опытом. Так вот. Представьте себе стандартную форму с большим количеством полей и тулбаром. Понятно,...

Свойство Enabled компонента Button
При нажатии Button необходимо запретить её нажатие до завершения процесса, который она запускает. Делаю так: Button2-&gt;Enabled =...

Условные операторы и свойство Enabled у кнопки
Народ помогите решить проблему, что-то я совсем запутался. If a = b Then ButAdd.Enabled = True If a &lt;&gt;...

CheckBox и свойство Enabled у других компонентов
Здравствуйте. У меня на форме имеется 1 лэйбл и 1 эдит, у них свойство Enabled=false. Я хочу чтобы при установки галки в chekbox, свойство...

Свойство Enabled есть у класса TControl
есть у меня такой код procedure TForm4.CheckBox3Click(Sender: TObject); begin if form4.CheckBox3.Checked=true then begin ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru