|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
Видимость состояния радиокнопки в другой форме24.07.2009, 06:07. Показов 6713. Ответов 31
Метки нет (Все метки)
В стартовой форме программы есть несколько радиокнопок (RadioButton). Есть несколько других последовательно открываемых форм. Необходимо, чтобы состояние радиокнопок (свойство Checked) в стартовой форме было видно в остальных формах, так как оно влияет на ход дальнейшего выполнения программы.
Как это сделать без лишнего геморроя?
1
|
|
| 24.07.2009, 06:07 | |
|
Ответы с готовыми решениями:
31
Радиокнопки и видимость элементов формы Отображение кнопки на одной форме в зависимости от состояния Checkbox на другой
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 31.07.2009, 05:36 [ТС] | |
|
Сделал по 2 варианту, состояние кнопки передается из формы в форму. В общем смысл передачи я уже понял, такими же способами передаются и состояния и значения и любых других элементов из формы в форму, правильно?
Одно не совсем дошло - зачем в вашем примере дважды инициализируется f2 = new Form2(); - первый раз в блоке инициализации, а второй - в обработчике нажатия кнопки? Причем первый раз ещё даже ее до объявления. Возникает другая проблема. Дело в том, что при инициализации формы 3 мне необходимо заполнить комбобоксы определенными значениями в зависимости от состояния радиокнопок Stand и Export (в вашем примере rb1 и rb2). Но при выполнении InitializeComponent(); переменные rb1 и rb2 еще не определены и, соответственно, та часть кода, которая расположена сразу за InitializeComponent(); тоже не знает, в какие значения будут у rb1/rb2 и все время показывает умолчальные значения. А списки не заполняются вообще никак и их свойство DropDownStyle не меняется. Может я немного неграмотно выражаюсь, еще к терминологии и структуре C# не привык. Взгляните на предлагаемый проект (точнее его начальную "настроечную" часть). Если в форме 3 убрать комментарии в строках 105 и 113, то изменение состояния радиокнопок Stand и Export (в форме 1) в сообщениях отображается, а если в строках 17-18 - то нет, соответственно строки 21-95 не выполняются. Почему?
0
|
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 31.07.2009, 05:47 [ТС] | |
|
Другая проблема снимается, решил сам. А вопрос про двойное объявление формы остается.
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||||||
| 31.07.2009, 10:54 | ||||||
|
sergo_ukr, первый раз потому что:
Второй раз для того, чтобы форму можно было открывать более одного раза. Т.е. при первом нажатии на кнопку форма открывается. После того как ее закрыли - уничтожается обьект f2 и уже с этим обьектом(а следовательно и формой) работать нельзя(можеш посмотреть что будет - вылетит исключение "попытка доступа к ликвидированному обьекту"). А так каждый раз при нажатии на кнопку я создаю заново этот обьект и могу без проблем открывать форму много раз
0
|
||||||
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 31.07.2009, 16:06 [ТС] | |
|
Понял, спасибо за разъяснение!
Патологически не хватает времени на чтение умных книг, к тому же у разных авторов изложение разное, кто-то заостряет внимание на одном, кто-то на другом, поэтому иногда проще в форуме задать вопрос и получить на него ответ. Еще раз спасибо, наверное данную тему можно закрыть.
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
| 31.07.2009, 16:14 | |
|
Знаеш, я не знаю, насколько правильно я поступаю, но я книг не читаю. Обращаюсь к ним(ну или гугл с форумом) только тогда когда над чем-то застрял и не знаю как выйти из ситуации. Практика по мне - самое лучшее изучение
0
|
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 03.08.2009, 16:53 [ТС] | |
|
В принципе да, но некоторый базовый минимум все равно знать надо, чтобы меньше глупых вопросов в форумах задавать. Кроме того, когда знаешь структуру языка в целом (хотя бы поверхностно), в деталях разобраться уже намного легче. По крайней мере мне. У меня такая метода восприятия - сначала охватить проблему в целом, а потом по мере необходимости углубляться до конкретных деталей. А когда начинаешь с изучения деталей, то постоянно обнаруживается нехватка знаний по каким-нибудь другим деталям. В общем примерно так.
Проблема ещё и в том, что раньше в силу специфики работы я немного программировал на VBA for Excel 2003 и чуть-чуть на VB 3.0, а они по сравнению с C# совсем другие: они не поддерживают технологию .NET, поэтому сама структура языка другая, основные понятия другие, да в общем-то практически все другое, поэтому навыки, приобретенные в VBA практически не годятся для C# и приходится все осваивать заново. Добавлено через 3 минуты 3 секунды И еще одна проблема с умными книгами. Такое впечатление, что процентов 90 книг авторы пишут сами для себя, поэтому научиться по ним чему-нибудь достаточно сложно. А по настоящему толковых книг несмотря на обилие литературы - раз-два и обчелся!!! :-(
0
|
|
|
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
|
|
| 04.08.2009, 03:05 | |
|
Давайте не будем уходить от темы топика
0
|
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 05.08.2009, 17:42 [ТС] | |
|
Собственно тема топика как таковая исчерпана, если будут возникать другие вопросы, то они уже вряд ли будут относиться к этой теме.
0
|
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|||||||||||
| 18.09.2009, 12:21 [ТС] | |||||||||||
|
Думал, что тема закрылась, но выяснилось, что не до конца. Дело вот в чем:
По нижеприведенной методике M128K145 у меня все получается, если я перехожу из Form1 в Form3 или в Form4 напрямую. Для этого я сделал так: в форме 1:
Но вот если я перехожу из Form1 в Form3, а уже из нее перехожу в Form4, то Form4 состояния радиокнопок в Form1 не видит. Т.е. должна быть еще одна промежуточная передача свойств кнопок, находящихся в ф.1 из f3 в f4? А как? Я пробовал в ф.3 написать тот же код, что в ф.1, но компилятор ругается, что нет в текущем контексте таких элементов Stand_CheckedChanged(sender, e) и Export_CheckedChanged(sender, e). Оно и понятно, они же в ф.1. Я их убрал, оставил только в ф.3 Form4 f4 = new Form4(). Ругани нет, но и результата нет. Что я опять неправильно делаю?
0
|
|||||||||||
|
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
| 23.09.2009, 13:13 | |
|
Извиняюсь, если уже не в тему, но нельзя ли было просто в самом начале программы (перед созданием форм, сделать глобальными) объявить неслосься bool переменных и потом в форме присвоить значения боксов? Тогда их состояние будет доступно по всему коду.
Понимаю, некрасивый стиль программирования с глобальными переменными, но так на много легче.
1
|
|
|
8 / 8 / 0
Регистрация: 22.07.2009
Сообщений: 58
|
|
| 23.09.2009, 21:58 [ТС] | |
|
Попробую на днях, поскольку работа над проектом притормозилась из-за более срочных дел. О результатах сообщу.
0
|
|
|
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
| 23.09.2009, 23:52 | |
|
Дерзай
0
|
|
| 23.09.2009, 23:52 | |
|
Видимость и не видимость кнопки на форме Видимость объекта в зависимости от состояния CheckBox Видимость компонентов в зависимости от состояния CheckBox
Создание в форме обработчика для радиокнопки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|