Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DataWindow (прокрутка) / 14 сообщений из 14, страница 1 из 1
12.08.2003, 13:49
    #32234045
anais
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Есть два объекта DataWindow (Control) - dw_1 и dw_2, присоединённые к одной БД
/*
dw_1.Retrieve( )
dw_1.Setfocus( )
dw_1.ShareData(dw_2)
dw_2.Retrieve()
*/
один объект наложен на другой (с целью горизонтальной прокрутки второго и фиксации первого столбца в первой).

Как сделать, чтобы при использовании вертикального скрола dw_2 (св-во VScrollBar), прокручивался и dw_1.

dw_1.event scrollvertical(scrollpos) - в событии dw_2 scrollvertical - не работает.
...
Рейтинг: 0 / 0
12.08.2003, 15:21
    #32234236
DenisVK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
C PowerBuilder идут примеры. Там в разделе datawindow есть такой пример.
раздел Events & Functions и далее вибрать Synchronized Vertical Scrolling
загрузить и посмотреть как работает:
///////////
// scrollvertical script for dw_data
///////////

//Syncronize the names datawindow to match the scroll position from this datawindow.

dw_names.Object.datawindow.verticalscrollposition = scrollpos
...
Рейтинг: 0 / 0
12.08.2003, 17:34
    #32234485
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Вот этот скрипт, в особенности последние 2 строчки:
/*
dw_1.Retrieve( )
dw_1.Setfocus( )
dw_1.ShareData(dw_2)
dw_2.Retrieve()
*/
по сути есть оксюморон :-).
Если dw_1.ShareData(dw_2), то зачем dw_2.Retrieve() ?
...
Рейтинг: 0 / 0
13.08.2003, 17:09
    #32235733
KOLCHOZ_POSTEVENT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
DenicVK дело говорит:бегунок надо двигать не евентом,а modify или его аналогом.
Бить по свойству VerticalScrollPosition в dw_1.
А вот значение передвига брать из евента scrollvertical dw_2.
Ну и modify ,соответственно запускать из него...
...
Рейтинг: 0 / 0
13.08.2003, 17:27
    #32235769
anais
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
всё работает) гут
...
Рейтинг: 0 / 0
14.08.2003, 11:59
    #32236347
AndrewN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
А зачем так сложно? Всё делается на одном DW.
У DW есть такое свойство HSplitScroll. Если оно True, то в DW появляется на горизонтальном скролл баре черненький прямоугольник, который двигается. Это и есть горизонтальный сплит. А положение этого самого сплита можно установить модифаем "DataWindow.HorizontalScrollSplit". Вот так вот.
...
Рейтинг: 0 / 0
14.08.2003, 19:05
    #32237169
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
AndrewN , а кто сказал, что это НУЖНО на одном datawindow?
...
Рейтинг: 0 / 0
14.08.2003, 19:39
    #32237186
AndrewN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Филипп , цель создания такого интерфейса (" с целью горизонтальной прокрутки второго и фиксации первого столбца в первой ") и то, что в коде dw_1.ShareData(dw_2), говорит о том, что можно обойтись одним DW.
...
Рейтинг: 0 / 0
14.08.2003, 19:54
    #32237193
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
AndrewN , смотри тему /topic/43382 (фиксация левого столбца...). Собственно об этом же тут речь.\r
В одном datawindow даже с HorizontalSplitSrollом фиксации левого столбца не выйдет (о чём собственно я и говорил в той теме и даже предлагал то же самое что и ты как "кривое" решение :-) )
...
Рейтинг: 0 / 0
14.08.2003, 20:01
    #32237199
AndrewN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Филипп , Чем же оно криво?
...
Рейтинг: 0 / 0
14.08.2003, 20:59
    #32237214
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Тем, что НЕЛЬЗЯ зафиксировать левый столбец...
...
Рейтинг: 0 / 0
15.08.2003, 08:33
    #32237343
anais
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Филипп ты прав, там, действительно, не фиксируется левый столбец. =))
Наверное, лучшего решения, чем использование двух объектов DataWindow, присоединённых к одной БД, просто нет.

может кто-нибудь предложить другие варианты реализации такого интерфейса?
...
Рейтинг: 0 / 0
15.08.2003, 13:22
    #32237580
AndrewN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
Ну в том смысле чтоб скроллинг в нем не работал - да. А так вполне нормальное решение. Если пользователю хочется скроллировать, то пусть скроллирует на здоровье.
...
Рейтинг: 0 / 0
15.08.2003, 17:39
    #32237963
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataWindow (прокрутка)
anais , а в чём проблема с "использование двух объектов DataWindow", НО только конечно не оба "присоединённых к одной БД", а один и прошаренный с другим (или оба прошаренные с datastorом, если делать элегантнее) ?
Ведь делается за 5 минут...
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DataWindow (прокрутка) / 14 сообщений из 14, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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