Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 13

Переход между формами в одном окне

05.04.2020, 12:45. Показов 1390. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, уважаемые посетители форума.
Я работаю в дизайнере, в Windows Forms. У меня есть формы. Между ними необходимо сделать переход, но в одном окне. Т.е. будет отображаться окно и в нём будет переход между формами: без "дрыгания" и закрытия на рабочем столе одной, и появления там же другой формы. Нажал кнопку - появился раздел, нажал кнопку "Выход" - вернулся в главное меню, но всё без вышеописанных "побочных эффектов".
Подскажите, как это можно осуществить.
Спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.04.2020, 12:45
Ответы с готовыми решениями:

Переход между формами
Необходимо сделать переход между формами. Сделал переход с 1 формы на 2, а назад не получается. uses Unit1,Unit2; begin ...

Переход от одной задачи к другой в одном окне
Доброго времени суток всем. Перейду к делу. У меня есть окно (Windows Forms, VS2012). Задача: Запуская программу, я должен видеть...

Переход между формами
Есть форма, при нажатии на клавишу открывается другая форма. Первую форму скрываю с помощью Hide или Visible. Как сделать так, чтобы после...

8
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
05.04.2020, 16:54
Это делается не созданием нескольких форм, а скрытием элементов 1 страницы и рисования элементов другой.

Лучше всего использовать контейнер, потому что если ему поставить .Visible := false; - все содержащиеся элементы пропадают, то есть это скрытие в 1 операцию. Ну и появление так же, только := true, конечно.

Но как это с редактором форм сочетать - не представляю. Сам всегда без него писал.
0
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 13
06.04.2020, 12:37  [ТС]
А поподробнее можно, пожалуйста?
0
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
06.04.2020, 18:19
Задавайте конкретные вопросы, что не понятно. Всё непонятно это не вопрос.
0
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 13
06.04.2020, 19:29  [ТС]
Я сделал меню из трёх кнопок. Я бы хотел узнать, как запрограммировать кнопки, чтобы, при нажатии на любую из них, отобразить нужное мне содержание в этом же окне, где было и меню с кнопками. Без "пропадания" окна, в котором находится меню и появления нового окна с содержанием, которое мне нужно, а нажал кнопку и в этом же окне появляется, например, картинка. Мне нужно "переключение" (пропадание одного окна и появление другого) убрать.
Спасибо.
0
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
06.04.2020, 20:11
Это вы уже говорили. Я спрашивал что из моего объяснения не понятно. И вы вообще пробовали разобраться, или увидели страшные слова и испугались?

Добавлено через 3 минуты
Pascal
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
{$reference System.Windows.Forms.dll}
{$reference System.Drawing.dll}
{$apptype windows}
 
uses System.Windows.Forms;
uses System.Drawing;
 
begin
  var MainForm := new Form;
  
  var c1 := new ContainerControl;
  c1.Dock := DockStyle.Fill;
  var b1 := new Button;
  c1.Controls.Add(b1);
  b1.Text := 'кнопка 1';
  b1.Dock := DockStyle.Left;
  
  var c2 := new ContainerControl;
  c2.Dock := DockStyle.Fill;
  var b2 := new Button;
  c2.Controls.Add(b2);
  b2.Text := 'кнопка 2';
  b2.Dock := DockStyle.Right;
  
  MainForm.Controls.Add(c1);
  MainForm.Controls.Add(c2);
  
  c2.Visible := false; // для начала второй контейнер невидимый
  
  b1.Click += (o,e)->
  begin
    c1.Visible := false;
    c2.Visible := true;
  end;
  
  b2.Click += (o,e)->
  begin
    c2.Visible := false;
    c1.Visible := true;
  end;
  
  Application.Run(MainForm);
end.
0
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 13
07.04.2020, 15:46  [ТС]
Хорошо, спасибо. Просто я через дизайнер форм делаю. Я, кстати, искал видеоуроки по дизайнеру, но ничего так и не нашёл путного (разбор инструментов, возможностей; что означает каждый пункт в свойстах?).
Не могли бы подсказать литературу или что-то вроде этого?
0
 Аватар для Sun Serega
2355 / 1458 / 526
Регистрация: 07.04.2017
Сообщений: 4,798
07.04.2020, 22:06
Лучший ответ Сообщение было отмечено Denis_72 как решение

Решение

Свойства всех классов элементов управления (как и всего остального из System) - собственность .Net, поэтому и смотреть надо его справку:
https://docs.microsoft.com/en-... mework-4.8
1
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 13
08.04.2020, 14:23  [ТС]
Спасибо Вам, очень помогли.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.04.2020, 14:23
Помогаю со студенческими работами здесь

Переход между формами
как перейти на 2 форму, закрыв 1ую.(на первой флеш со звуком).

Переход между формами
Здравствуйте, форумчане. Создаю программу с множеством форм. Много переходов между формами. Переход 1-2-3 сделал, а как сделать переход...

Переход между формами
Здравствуйте! Нужно перейти с первой формы на вторую. Form1.hide; Form2.show; или Form1.close; Form2.show; Не работают....

Переход между формами
Здравствуйте! У меня возникла такая ошибка... Есть код открытия формы при нажатии на кнопку Form2 f2 = new Form2(); f2.Show(); ...

Переход между формами
Всем привет :) Пишу программу на С#( Microsoft VS Express 2012 ), в программе задействую библиотеку OpenGL. У меня есть одна главная форма...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере 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-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru