Вы можете использовать этот фрагмент:
if Form2.RadioButton1.Checked then
begin
// Do something
end else
if Form2.RadioButton2.Checked then
begin
// Do something else
end;
Если это будет приложение большего размера, вам следует подумать о создании глобального объекта настроек , который может быть изменен на вашем экране параметров и читается процедурами, которые должны знать об определенных настройках.
Важно: Прямой доступ к вашим формам со всего кода просто увеличивает сцепление. Когда ваше приложение станет немного больше, его обслуживание станет кошмаром.
// Form2
Config.DoSomething = RadioButton1.Checked
Config.DoSomethingElse = RadioButton2.Checked
// Form1
if Config.DoSomething then
begin
// Do something
end else
if Config.DoSomethingElse then
begin
// Do something else
end;
Вы также можете добавить методы к объекту config
uration, чтобы сохранить настройки на диск и перезагрузить их при следующем запуске приложения.
Другие предлагали использовать RadioGroup , но лично мне они не нравятся в качестве долгосрочного решения, потому что я считаю, что их сложно адаптировать к моим личным потребностям пользовательского интерфейса. (В основном, границы и расстояния). Они также могут стать проблематичными, если однажды вы захотите изменить порядок элементов или вставить новый элемент в любое место, кроме конца: внезапно ItemIndex
2 означает что-то совершенно другое :) Но как быстрое и грязное решение они действительно полезны.