Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Doubleclicked на заголовке datawindow control / 22 сообщений из 22, страница 1 из 1
24.11.2008, 14:23
    #35671703
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Подскажите пожалуйста как отловить собыие Doubleclicked на синем заголовке datawindow control?т.е. на titlebar.
спасибо.
...
Рейтинг: 0 / 0
24.11.2008, 15:09
    #35671839
SasaR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Наверное нереал - к-ть WM_XXX в событии other...
А зачем ?
...
Рейтинг: 0 / 0
24.11.2008, 15:13
    #35671852
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
SasaRА зачем ?
на окне сделаны несколько DW. И при двойном щелчке на заголовке dw распахивается на все окно.
...
Рейтинг: 0 / 0
24.11.2008, 16:21
    #35672096
SasaR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Ну и ? Надо запретить распахивание ? Или узнать - какое именно распахнулось ?
...
Рейтинг: 0 / 0
24.11.2008, 16:25
    #35672104
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
нет. надо как раз поймать doubleckicked и распануть/вернуть в исходное.
...
Рейтинг: 0 / 0
24.11.2008, 16:25
    #35672105
SasaR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
аа, ты хочешь, чтобы распахивались ?...
...
Рейтинг: 0 / 0
24.11.2008, 16:27
    #35672113
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
ну да
...
Рейтинг: 0 / 0
24.11.2008, 16:45
    #35672179
SasaR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
надо поставить галочку на TitleBar, MaxBox (MinBox, если надо), убрать с ControlMenu (чтобы не закрывали) - тогда даблклик на заголовке распахивает, наряду с кнопкой maximize
...
Рейтинг: 0 / 0
24.11.2008, 16:53
    #35672210
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
у меня не стандартное распахивание, надо что бы распахнулось специфично по моему скрипту.и элементы управления не нужны справа сверху.
может надо отслеживать событие pbm_syskeydown?!
вот только какой то Message.WordParm?
для перемещения Message.WordParm = 61458
...
Рейтинг: 0 / 0
24.11.2008, 19:07
    #35672596
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Друзья, может так таки кто нить сталкивался с такой проблемой?!
...
Рейтинг: 0 / 0
24.11.2008, 19:37
    #35672651
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Может, конечно, глупость скажу, но я бы попробовал перехватить и обработать ресайз... А еще попробовал бы замапить maximize и minimize как у окна...
------------
С уважением, IKAR

IkarHomeCenter ........ Детский Дворик ........ ГавГав.Инфо
Портал русскоязычной группы пользователей Sybase
...
Рейтинг: 0 / 0
24.11.2008, 23:43
    #35672868
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Коль речь идёт о Doubleclicked на заголовке, то и мэпать надо pbm_nclbuttondblclk
, а там типа:
Код: plaintext
1.
2.
3.
4.
if hittestcode =  2  THEN //(HT_CAPTION) 
       //делай что я хочу
	message.processed = true
	return  1 
END IF
Для полноты картины надо промэпить pbm_syscommand, и там:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
constant long SC_MINIMIZE =  61472 
constant long SC_MAXIMIZE =  61488 
constant long SC_RESTORE =  61728 
constant long SC_MOVE =  61456 

CHOOSE CASE commandtype
	CASE SC_MINIMIZE, SC_MAXIMIZE, SC_RESTORE, SC_MOVE
                //делай что я хочу
		message.processed = TRUE 
		RETURN  1 
END CHOOSE
...
Рейтинг: 0 / 0
25.11.2008, 00:43
    #35672908
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Достаточно в событии pbm_syscommand сделать так:
Код: plaintext
1.
2.
3.
4.
CONSTANT unsignedlong SC_MAXIMIZE2 =  61490  //0xF032

IF commandType = SC_MAXIMIZE2 THEN
   Messagebox("Test", "MAXIMIZE. Doubleclicked на заголовке datawindow control")
END IF
...
Рейтинг: 0 / 0
25.11.2008, 09:39
    #35673186
zuzu zuzu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
vovan_zнадо ... распануть/вернуть в исходное. по моему человек просил команды MessageSend а не как запретить :)
...
Рейтинг: 0 / 0
25.11.2008, 11:59
    #35673651
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Всем спасибо. То что нужно!
взял вариант Филиппа
дла варианта AIS надо включать maxbox, а это мне не надо.
...
Рейтинг: 0 / 0
25.11.2008, 19:58
    #35675130
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
vovan_zВсем спасибо. То что нужно!
взял вариант Филиппа
дла варианта AIS надо включать maxbox, а это мне не надо.
Странное решение, ведь вариант Филиппа не обеспечивает функционала про который был вопрос:
"Подскажите пожалуйста как отловить собыие Doubleclicked на синем заголовке datawindow control?т.е. на titlebar."
Сделайте Doubleclicked "на синем заголовке" в одном и втором вариантах, а не на maxbox.
Угадайте где DW максимизируется. :)
...
Рейтинг: 0 / 0
25.11.2008, 20:44
    #35675181
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
AISvovan_zВсем спасибо. То что нужно!
взял вариант Филиппа
дла варианта AIS надо включать maxbox, а это мне не надо.
Странное решение, ведь вариант Филиппа не обеспечивает функционала про который был вопрос:
"Подскажите пожалуйста как отловить собыие Doubleclicked на синем заголовке datawindow control?т.е. на titlebar."
Сделайте Doubleclicked "на синем заголовке" в одном и втором вариантах, а не на maxbox.
Угадайте где DW максимизируется. :)
Угадаю - если написать как я показал, НЕ БУДЕТ максимизироваться вообще
...
Рейтинг: 0 / 0
25.11.2008, 23:46
    #35675297
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Мне не надо стандартно максимизировать, у меня зупускается своя функция максимизации. Как я понял вариант AIS отлавливает событие MAXIMIZE у data window и работает ТОЛЬКО когда включен флаг maxbox.Вариант Филиппа отлавливает doubleclicked на синем заголовке.Вопрос был именно про doubleclicked!И почему мое решение странное?!
...
Рейтинг: 0 / 0
28.11.2008, 01:25
    #35680746
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
vovan_zМне не надо стандартно максимизировать, у меня зупускается своя функция максимизации. Как я понял вариант AIS отлавливает событие MAXIMIZE у data window и работает ТОЛЬКО когда включен флаг maxbox.Вариант Филиппа отлавливает doubleclicked на синем заголовке.Вопрос был именно про doubleclicked!И почему мое решение странное?!
Да потому что:
Код: plaintext
1.
2.
constant long SC_MINIMIZE =  61472 
constant long SC_MAXIMIZE =  61488 
constant long SC_RESTORE =  61728 
это значения события клика по соответствующим кнопкам в заголовке, а
Код: plaintext
CONSTANT unsignedlong SC_MAXIMIZE2 =  61490 
это значение события двойного клика по "синей области" заголовка, и естественно если вместо
Код: plaintext
Messagebox("Test", "MAXIMIZE. Doubleclicked на заголовке datawindow control")
(из моего примера) поставить:
Код: plaintext
1.
2.
//делай что я хочу
message.processed = TRUE 
RETURN  1 
то DW тоже "НЕ БУДЕТ максимизироваться вообще". Я даже не предполагал, что это надо было дальше пояснять, т.к. уже был пример Филиппа.
Т.е. ловить Doubleclicked можно в одном событии pbm_syscommand, а не с использованием второго.
И интересно зачем тогда нужно событие pbm_syscommand, если в заголовке нет кнопок?
...
Рейтинг: 0 / 0
28.11.2008, 02:34
    #35680762
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
AIS, вы чего тут за рыбу деньги продаёте?
...
Рейтинг: 0 / 0
28.11.2008, 10:41
    #35681137
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
Я смотрю AIS любит поспорить.
AIS
CONSTANT unsignedlong SC_MAXIMIZE2 = 61490
это значение события двойного клика по "синей области" заголовка

Ага, только срабатывает оно когда maxbox=true !!!
AIS
И интересно зачем тогда нужно событие pbm_syscommand, если в заголовке нет кнопок?

Нужно для того что бы заблокировать перемещение datawindow за заголовок
...
Рейтинг: 0 / 0
28.11.2008, 13:03
    #35681718
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Doubleclicked на заголовке datawindow control
авторвы чего тут за рыбу деньги продаёте?
vovan_zЯ смотрю AIS любит поспорить.

Какая рыба? Какие деньги? Кто спорит?
Просто создал в DW (PB10.5) два предложеных события и попробовал как это работает, и просто не понял зачем обрабатывать клики по кнопкам, когда речь шла о двойном клике по "синей области" заголовка, и предложил свой вариант. Вот и всё. Нет предмета спора - нет ни рыбы, ни денег. :)
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Doubleclicked на заголовке datawindow control / 22 сообщений из 22, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]