|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
Панель элементов для создания формы06.04.2021, 21:27. Показов 3888. Ответов 19
Метки нет (Все метки)
Здравствуйте!
Не могу найти(создать) в визуалстудио(визуал бейсик) элемент(панелька) такой как в экселе, который появляется справа от рабочей области при нажатии например кнопки Справочники, Тезаурус и при этом его можно перемещать, а при двойном клике он опять встраивается в рабочую область. Фото приклепляю. Спасибо.
0
|
|
| 06.04.2021, 21:27 | |
|
Ответы с готовыми решениями:
19
Заблокирована панель элементов формы?! Вынести ярлык для формы на панель инструментов Аргумент для создания формы |
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
||||||
| 10.04.2021, 22:53 [ТС] | ||||||
|
Похоже это форма с отключенным в свойствах формы бордюром(FormBorderStyle). И на неё накиданы элементы.
Сделал. Но опять проблема. Создал главную mdi форму, затем в неё поместил форму. Но она находится под элементами(кнопками и меню). Перещёлкал все настройки в свойствах, но не смог найти как её позиционировать относительно верхнего меню, например и вывести на передний план. Она не перетаскивается к тому же. Менять ширину позволяет, перетащить внутри mdi формы не получается. Во-первых не видно из-за меню бордюра. А когда я его вообще убрал то тем более.
0
|
||||||
| 11.04.2021, 00:17 | |
|
Geo5, я конечно не уверен, но по моему стандартные формы так делать не умеют. Для реализации того, что Вы хотите, придётся написать свой класс формы. То есть полностью реализовать "липучесть", автоматическое сворачивание (с анимацией), "выталкивание" других форм при закреплении на одной из сторон родительской формы и т.п.
1
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
||||||
| 11.04.2021, 19:29 [ТС] | ||||||
|
Спасибо. Поняли что я хочу. А как вывести вторую форму в определённое место? В свойствах я не нашёл. Тоже программно? Каким кодом? И может подскажете, где прочитать про то что вы написали или как грамотно сформировать поисковый запрос про выталкивание и липучесть. Спасибо.
Добавлено через 8 минут Нашёл на этом форуме липучесть.
0
|
||||||
|
3257 / 3273 / 556
Регистрация: 17.02.2019
Сообщений: 5,182
|
|
| 11.04.2021, 19:46 | |
|
А если MDI-форму попробовать. А в ней дочерние формы. https://docs.microsoft.com/ru-... esktop-4.8
1
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 11.04.2021, 21:02 [ТС] | |
|
Спасибо за ссылку. Но у меня и есть MDI. Да в эксель это и реализовано похоже, что так. Я дальше нарыл. Позиционирование такое дочерней формы: в свойствах выводимой формы StartPosition ставим в Manual и только тогда действует свойство Location, в котором ставим нужные X,Y в числовом виде. А один "крестик" закрытия получаем в свойствах FormBorderStyle выставив SizableToolWindow
Остаётся теперь спозиционировать относительно TabPage, ну и "выталкивание" допустим текстбокса и "вклеивание" по клику мыши в нужное место. И будет как в эксель.
0
|
|
| 11.04.2021, 22:49 | ||||||
|
Ещё можно попробовать такой фокус: добавить на родительскую форму меню ToolStrip и в начале скрыть его; когда additionalPanel сближается с краем клиентской области родительской формы отображать этот ToolStrip, указав ему соответствующий Dock, а additionalPanel скрывать.
Примерно так. Кликните здесь для просмотра всего текста
Остаётся передать коллекцию контролов из формы в меню или перенастроить отображение контролов в меню как в форме. С откреплением ToolStrip можно поступить аналогично, т.е. при смещении на некую дистанцию показывать форму, а менюшку прятать. Ну и режим перемещения тоже перенапрявлять.
3
|
||||||
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 12.04.2021, 20:24 [ТС] | |
|
Спасибо. Это надо переварить.
Я посмотрел в экселе на эту форму. Она наверное не MDI. Т.к. выходит за пределы родительской формы. И ещё там фишка такая, что если двигать плавно форму2, то она выходит за пределы формы1, а если быстро её шибануть в стенку, то она вклеивается. Но это уже слишком. Наверное надо для начала при переключении вкладок TabPage ограничится просто появлением форм 2 и т.д. в нужном месте, на первом плане и вытеснением текстбокса. А примеры в архиве не открываются у меня. Может просто на основные моменты текстом код? Спасибо всем. Но как на первый план форму2 вывести (в свойствах). На этом форуме читал, но чё-то не то.
0
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 13.04.2021, 20:04 [ТС] | |
|
Ovva спасибо, круто. Открылся твой проект.
Uswer, спасибо. Интересно. January29, спасибо. Всё-таки как в свойствах вывести дочернюю форму на передний план, чтобы она была сверху текстбокса и др. элементов. Или кодом как. Добавлено через 22 минуты Я нашёл тему с названием "форму-внучку на передний план". И туда задал вопрос про вывод на передний план. Там тема в 2018 создана и никто не ответил. Может посмотрите? я фото скинул туда. Добавлено через 5 минут Сорри, я в раздел С# вопрос задал.
0
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 13.04.2021, 21:05 [ТС] | |
|
Вот.
0
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 13.04.2021, 21:12 [ТС] | |
|
Форма 2 под кнопкой. А надо сверху
0
|
|
|
3257 / 3273 / 556
Регистрация: 17.02.2019
Сообщений: 5,182
|
|
| 13.04.2021, 21:20 | |
|
А если методом
BringToFront форму вывести на верх https://docs.microsoft.com/ru-... mework-4.8
1
|
|
| 13.04.2021, 21:57 | |
Сообщение было отмечено Geo5 как решение
Решение
Geo5, здесь ошибка принципиальная, если вы используете MDI-интерфейс, то должны понимать, как и для чего его используют. MDI это многодокументный интерфейс и в рабочем поле не должно быть никаких кнопок и т.п. Для наглядного представления можно рассмотреть Excel. Нужен новый документ, нажали на кнопку - появился документ, нажали еще раз – еще документ и т.д. Все документы - новые, загруженные плавают в одном поле и имеют один прототип.
Наиболее часто используют SDI - интерфейс одного документа. Вот там, в рабочем поле вы можете размещать кнопки, списки, сетки и т.д. При этом из главной формы вы можете открывать вспомогательные формы. В моих примерах, приведенных в этом обсуждении, используются как MDI (первый пример) так и SDI (второй пример) интерфейсы.
1
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
||||||
| 14.04.2021, 20:15 [ТС] | ||||||
|
Спасибо. Очень доходчиво объяснили.
С передним планом отложим пока. В принципе это можно сделать в MDI? Хочу всё-таки MDI оставить с учётом замечаний. Вот ещё загвоздка. Форма MDI. Табконтролл в ней с двумя вкладками. При переключении вкладок надо открывать форму2 и форму3 дочерние (эта самая панелька как в эксель) Но при этом, чтобы поочерёдно( при переключении вкладок ) закрывались или скрывались то форма2 то форма3. Сделал. Получилось. Переключаю вкладки и формы появляются, но не скрыть предыдущую форму. И что интересно, если объявить переменную на форму3 внутри модуля, то форма3 размножается при каждом переключении вкладки2.А я объявил голобальную и форма перестала размножаться. Правильно? Вот код. Как скрыть формы?
0
|
||||||
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 14.04.2021, 20:24 [ТС] | |
|
Вот фото к коду.
Хочу всё-таки в итоге как в эксель пенельку сделать.
0
|
|
| 14.04.2021, 22:24 | |
Сообщение было отмечено Geo5 как решение
Решение
Geo5, не изобретайте велосипед. Воспользуйтесь библиотекой DockPanel Suite от WeiFen Luo. Так же эту библиотеку можно поискать на sourceforge.net по словам DockPanel Suite. Тут кратенькая инструкция как и что. Удачи!
2
|
|
|
20 / 20 / 1
Регистрация: 06.04.2021
Сообщений: 208
|
|
| 15.04.2021, 20:53 [ТС] | |
|
Uswer, Ovva спасибо. Понял. Надо поизучать. И для моего проекта не нужна форма. Решил применить элемент Panel. А форма для моей задачи это как говорится: "микроскопом гвозди забивать". Просто начал с формой делать и интересно стало. Теперь имею представление для чего форма и что можно без неё обойтись.
0
|
|
| 15.04.2021, 20:53 | |
|
Помогаю со студенческими работами здесь
20
Приложение для создания формы Написать программу для создания формы Хороший модуль для создания формы Подскажите плагин/модуль/компонент для создания формы Нужен совет для создания простой игры, используя формы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
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 позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|