Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
Добрый день! Подскажите пожалуйста, как сделать, чтобы форму можно было перетащить не только за самый верх?
18 окт 12, 10:05    [13338420]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
leklerk,

А зачем менять стандартное виндовое поведение?
18 окт 12, 10:11    [13338457]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
Дело в том, что у некоторых пользователей стоят маленькие мониторы (15 дюймов), а программа расчитана на большие (19). При таком мониторе не получается просмотреть все содержимое страницы.
18 окт 12, 10:18    [13338516]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
leklerk,

Так может лучше форму уменьшить?
18 окт 12, 10:26    [13338585]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
Это будет плохо смотреться на больших мониторах.
18 окт 12, 10:31    [13338624]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
Banditos
Member

Откуда:
Сообщений: 88
leklerk
Это будет плохо смотреться на больших мониторах.


Разработать форму для самых маленьких мониторов.
Затем использовать свойство "Anchor".
18 окт 12, 13:11    [13340001]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
Спасибо, попробую!
18 окт 12, 13:38    [13340275]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
RIGOR
Member

Откуда:
Сообщений: 89
leklerk, используй скролл
19 окт 12, 14:02    [13346747]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
Jonny540
Member

Откуда:
Сообщений: 727
leklerk
Это будет плохо смотреться на больших мониторах.
Как вариант: разработай несколько форм, одинаковых по содержанию, но разных по размерам.
Это несложно, "чтобы мне кто не говорил"(с). А в старт-файле проверяй размер экрана и вызывай нужную форму.
Это проще, чем потом растягивать, двигать объекты и т.д.
19 окт 12, 15:35    [13347518]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
RIGOR
leklerk, используй скролл

Что вы имеете в виду? Как его использовать? Прошу прощения, я новичок!
19 окт 12, 16:10    [13347764]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
leklerk
Member

Откуда:
Сообщений: 395
Jonny540
leklerk
Это будет плохо смотреться на больших мониторах.
Как вариант: разработай несколько форм, одинаковых по содержанию, но разных по размерам.
Это несложно, "чтобы мне кто не говорил"(с). А в старт-файле проверяй размер экрана и вызывай нужную форму.
Это проще, чем потом растягивать, двигать объекты и т.д.

У меня много форм, замучаешься переделывать!!!
19 окт 12, 16:11    [13347773]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
RIGOR
Member

Откуда:
Сообщений: 89
leklerk, Правой кнопкой мыши по форме. Выбираем Properties. Ищем ScrollBars и выбираем нужное
19 окт 12, 16:30    [13347917]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
Dima T
Member

Откуда:
Сообщений: 15271
leklerk
У меня много форм, замучаешься переделывать!!!

Пишешь начальству финансовый план:
Без переделки будет изврат, хоть скролл, хоть ресайс. как ни крути - чтоб было удобно надо переписывать.
Стоимость часа твоей работы * время переделки = Стоимость переделки
Количество пользователей с маленькими мониторами * стоимость 19 дюймового монитора = Стоимость замены мониторов
если Стоимость замены мониторов > Стоимость переделки - пусть покупают новые мониторы и все.
19 окт 12, 21:38    [13349025]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
Dima T
Member

Откуда:
Сообщений: 15271
Dima T
если Стоимость замены мониторов > Стоимость переделки - пусть покупают новые мониторы и все.

опечатался, если замена моников дешевле :)

ЗЫ К стоимости переделки добавь косвенные затраты, т.к. за время переделки другие работы будет делать некогда.
19 окт 12, 21:40    [13349031]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать, чтобы форму можно было перетащить не только за самый верх?  [new]
alextashk
Member

Откуда:
Сообщений: 431
leklerk,

добавить в форме свойства
nXCoord=-1
nYCoord=-1

в событиях формы

mousedown
IF nButton = 1 .AND. nYCoord <= 24 THEN
	ThisForm.nXCoord = nXCoord
	ThisForm.nYCoord = nYCoord
ENDIF


mousemove
IF nButton = 1 .AND. ThisForm.nXCoord # -1 .AND. ThisForm.nYCoord # -1 THEN
	ThisForm.Left = ThisForm.Left + (nXCoord - ThisForm.nXCoord)
	ThisForm.Top = ThisForm.Top + (nYCoord - ThisForm.nYCoord)
ENDIF


mouseup
ThisForm.nXCoord = -1
ThisForm.nYCoord = -1
23 окт 12, 09:30    [13360233]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить