1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|||||||
1 | |||||||
Перемещение формы без границ20.03.2011, 10:37. Показов 57578. Ответов 24
Метки нет Все метки)
(
А возможно ли перемещать форму мышью по рабочему столу, если у нее нет рамки (FormBorderStyle=None)?
0
|
|
20.03.2011, 10:37 | |
Ответы с готовыми решениями:
24
Нарисовать границы у формы без границ Перемещение формы без заголовка Перемещение формы без бордюров
|
20.03.2011, 10:56 | 2 | |||||
Да
6
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|
20.03.2011, 11:12 [ТС] | 6 |
да да, форма бедет иметь немного нестандартную форму, и перетаскивание я хотел сделать на элементе panel (в самом верху формы), т.е. при зажатай клавише на этой панели и передвижении курсора форма тоже перемещалась...
Не по теме: ps: да просто не хотел захламлять форум ветками с банальными вопросами :)
0
|
46 / 46 / 3
Регистрация: 04.02.2011
Сообщений: 199
|
||||||
20.03.2011, 12:06 | 7 | |||||
![]() Решение
Вот:
Создай обработчик MouseDown и впиши туда это:
Добавлено через 1 минуту Эффект такой же, как в примере nio
10
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|
20.03.2011, 13:25 [ТС] | 8 |
может быть и проще (работоспособность не проверял), но этот способ мне непонятен (в отличии от способа, предложенным nio).
Что это за объект base и что за параметры у метода create()? Можеш прокоментировать? просто хочу что бы не просто работало, но и я понимал логику этого...
0
|
46 / 46 / 3
Регистрация: 04.02.2011
Сообщений: 199
|
||||||||||||||||
21.03.2011, 08:48 | 9 | |||||||||||||||
Ключевое слово this ссылается на текущий экземпляр класса, а также используется в качестве модификатора первого параметра метода расширения
Ключевое слово base используется для доступа к членам базового из производного класса. Таким образом, если класс унаследован от другого класса, то this.Close() вызовет метод реализованный в наследнике, а base.Close() - в родителе. И ещё, чтобы было понятнее, такой-же эффект, как и в моём предыдущем примере:
Добавлено через 2 минуты Про Message.Create почитай на MSDN Добавлено через 2 минуты А так мой способ короче и его легче запомнить.
2
|
969 / 772 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
|
||||||
21.03.2011, 08:55 | 10 | |||||
в winuser.h
1
|
46 / 46 / 3
Регистрация: 04.02.2011
Сообщений: 199
|
|
21.03.2011, 10:20 | 11 |
Konctantin, но если её заменить, программа будет работать правильно, не так ли?
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|
21.03.2011, 13:05 [ТС] | 12 |
mak326428, спасибо, разобрался, все работает
![]()
0
|
mak326428
|
21.03.2011, 13:16
#13
|
Не по теме: Пожалуйста
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
||||||
28.03.2011, 19:28 [ТС] | 14 | |||||
решил дальше развить, теперь хочу чтобы на время перемещения формы она становилась полупрозрачной... Для этого нужно переопределить метод WndProc()?
Прошу помощи...
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|
05.04.2011, 18:47 [ТС] | 15 |
Вопрос все еще актуален!
![]()
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|||||||||||
10.04.2011, 19:22 [ТС] | 16 | ||||||||||
![]() и так, вопрос я так и не решил, но вот что сделал и выяснил 1)добавил в обработчик MouseDown для формы:
0
|
10.04.2011, 20:06 | 17 | |||||
Не пойму, в чем проблема
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|||||||||||
10.04.2011, 20:37 [ТС] | 18 | ||||||||||
проблема в том, что не работает. Суть в следующем: при зажатой ЛКМ на форме (не заголовке - его нет) была возможность ее перемещать по экрану (это работает), при этом на это время она становилась полупрозрачной. Приведу весь код:
![]() Добавлено через 9 минут все, разобрался! ![]()
0
|
1183 / 805 / 10
Регистрация: 30.08.2010
Сообщений: 2,686
|
|
10.04.2011, 22:34 [ТС] | 20 |
0
|
10.04.2011, 22:34 | |
Помогаю со студенческими работами здесь
20
Перемещение формы None, без бордера Перемещение формы без FormBorderStyle = null; Перемещение за элемент label без бордера формы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |