Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
1

FixedToolWindows

04.11.2010, 12:43. Показов 1871. Ответов 21
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как сделать чтобы форму можно было передвигать по экрану со свойством FormBorderStyle в значении None ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 12:47 2
А что, разве она не передвигается? У ней же заголовок есть, хоть и узенький, но все же.
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 12:49  [ТС] 3
Ошибся немного

Добавлено через 42 секунды
Цитата Сообщение от OVSite Посмотреть сообщение
FormBorderStyle в значении None ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 13:00 4
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Dim pt As Point
    Dim MoveForm As Boolean
 
    Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
        pt = New Point(e.X, e.Y)
        MoveForm = True
    End Sub
 
    Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
        If MoveForm = True Then
            Location = New Point(Location.X + e.X - pt.X, Location.Y + e.Y - pt.Y)
        End If
    End Sub
 
    Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
        MoveForm = False
    End Sub
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 13:08  [ТС] 5
Спасибо помогло

Добавлено через 4 минуты
Ещё вопрос .
Какой код нужно вписать в кнопку что бы она сворачивала форму ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 13:09 6
VB.NET
1
Me.WindowState = FormWindowState.Minimized
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 13:13  [ТС] 7
Можно ли как то закруглить края у формы ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 13:15 8
Лучше помести картинку на бэкграундИмидж, а все оставшееся пространство формы сделай прозрачным,т.е. невидимым
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 13:17  [ТС] 9
Цитата Сообщение от Памирыч Посмотреть сообщение
Лучше помести картинку на бэкграундИмидж, а все оставшееся пространство формы сделай прозрачным,т.е. невидимым
Просто из интереса это можно как то программно сделать ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 15:26 10
А чего бы нет.
В загрузке формы присваиваешь свойства формы, которые ты с успехом меняешь в конструкторе, вот и все.
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 15:34  [ТС] 11
Памирыч, код выложить можешь ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 15:41 12
VB.NET
1
2
3
4
5
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.BackgroundImage = Image.FromFile("C:\1.png")
        Me.BackColor = Color.Brown
        Me.TransparencyKey = Color.Brown
    End Sub
Только используй лучше рисунок ГИФ
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 15:42  [ТС] 13
Памирыч, ты не правильно понял
Под программно я имел в виду без BackgroundImage .
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 15:56 14
Там вроде надо АПИ юзать, не поммню, врать не буду. Что-то с регионами. Неспортивно, поэтому не изучал.
1
Почетный модератор
Эксперт .NET
8722 / 3674 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
04.11.2010, 16:52 15
Цитата Сообщение от Памирыч Посмотреть сообщение
Неспортивно
Кто же тебе такое сказал?
Цитата Сообщение от Памирыч Посмотреть сообщение
Там вроде надо АПИ юзать
У формы есть свойство Region. Изменяешь его во время события HandleCreated и\или Resize, и будет у тебя форма в зависимости от того какой Region задашь.
1
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 16:57  [ТС] 16
SSTREGG, можно по подробнее и с кодом ?
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 17:01 17
Цитата Сообщение от SSTREGG Посмотреть сообщение
Кто же тебе такое сказал?
Далеко ты ускачешь на регионах?
1
Почетный модератор
Эксперт .NET
8722 / 3674 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
04.11.2010, 17:11 18
А что тебя в них не устраивает? ) Пользуйся возможностями WPF тогда.

OVSite, в событие Resize вставь.
VB.NET
1
2
3
4
Dim gp As New GraphicsPath()
gp.AddEllipse(Me.ClientRectangle)
Me.Region = New System.Drawing.Region(gp)
gp.Dispose()
Просто пример, без всяких наворотов.
0
171 / 169 / 1
Регистрация: 22.08.2010
Сообщений: 1,251
04.11.2010, 17:17  [ТС] 19
Пишет GraphicsPath() не определён .
0
Почетный модератор
21415 / 9150 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
04.11.2010, 17:18 20
SSTREGG, Во-первых, регионами можно создать не любую форму, а если даже и можно, то к чему писать этот код для каждой тютельки.
Второе: Если ты придаешь окну какуюто свою форму, то, раз назвался груздем, полезай в кузов, должен быть какой-то фон, ну не серую же оставить или однотонную (это мое ИМХО, начал делать - делай как положено), тогда смысл рифмовать регионы, если картинка уже есть?
0
04.11.2010, 17:18
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru