Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подсветка текущего поля при редактировании / 12 сообщений из 12, страница 1 из 1
08.12.2003, 12:57
    #32346309
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Можно ли как-то сделать выделение текущего поля другим цветом при редактировании, вместо того, чтобы показывать фокус вокруг него?
...
Рейтинг: 0 / 0
08.12.2003, 13:45
    #32346399
Я
Я
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Можно :-))
Тока зачем :-))
...
Рейтинг: 0 / 0
08.12.2003, 13:56
    #32346421
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Затем что при редактировании во FreeForm пользователь хочет видеть текущее поле выделенным другим цветом.

А вообще говоря, если человек спрашивает - значит ему нужно. Знаешь как сделать - скажи, не знаешь - не пиши зазря. :)
...
Рейтинг: 0 / 0
08.12.2003, 13:58
    #32346426
Я
Я
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Какие мы грубые :-))
А на самом деле делается все Modify!
...
Рейтинг: 0 / 0
08.12.2003, 14:01
    #32346433
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Очень конкретный ответ. Ты забыл сказать, что это делается в PowerBuilder. :))

Пример можешь написать?
...
Рейтинг: 0 / 0
08.12.2003, 14:05
    #32346441
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
На самом деле все было бы очень просто, если бы в DW-функциях были аналоги GetRow() и CurrentRow() для столбцов. Но поскольку их нет, то такая простая задачка требует каких-то дополнительных действий.
...
Рейтинг: 0 / 0
08.12.2003, 14:14
    #32346463
Я
Я
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Ну например:
iwd.Modify('column1.background.color=80269524')
...
Рейтинг: 0 / 0
08.12.2003, 14:15
    #32346464
Я
Я
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Или ты не знаешь, когда енто написать?
...
Рейтинг: 0 / 0
08.12.2003, 14:26
    #32346480
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Я Guest
Ну например:
iwd.Modify('column1.background.color=80269524')


Это все? М-да... :)) Если бы я был начинающим программистом на PB, то от такой подсказки я бы только больше запутался. :-/

Такой вариант подразумевает использование как минимум события ItemFocusChanged, внешних переменных для хранения имени предыдущего активного столбца, сбрасывания установок цвета по умолчанию для неактивных столбцов и т.д. Я уж не говорю о том, что такой скрипт меняет настройки цвета для столбца во всех строках, и при стиле DW, отличном от FreeForm это дает нежелательный результат.

Я думал ты предложишь какой-то иной способ решения этой проблемы. :)

Ладно, буду пробовать дальше.
...
Рейтинг: 0 / 0
08.12.2003, 15:42
    #32346634
Я
Я
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
Ну Andyn, пиши более четко задачу тогда... :-))
авторТакой вариант подразумевает использование как минимум события ItemFocusChanged, внешних переменных для хранения имени предыдущего активного столбца, сбрасывания установок цвета по умолчанию для неактивных столбцов и т.д.
Ну ты правильно подметил ...

Ну хорошо, ты не хочешь это писать в событиях, а тебе будет не влом писать это в каждой колонке каждо DW?

авторЯ уж не говорю о том, что такой скрипт меняет настройки цвета для столбца во всех строках, и при стиле DW, отличном от FreeForm это дает нежелательный результат.

А кто тебе мешает:
Modify(dwo.name+'.background.color="536870912~tif(currentRow()=getrow(),rgb(255,0,0),rgb(0,255,0))"').

А если ты хочешь, что-то более универсальное, то надо покрутить функциями, которые позволяет PB использовать в своих выражениях...
Так что дерзай, сделаешь напиши...
Любопытно посмотреть :-))
...
Рейтинг: 0 / 0
08.12.2003, 16:42
    #32346770
PaulJB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
А что если заделать так:
добавить текстовое поле t_colindex
в него записываем индекс или имя (в зависимости что обрабатывать см. ниже) активной колонки (поля) в событии ItemFocusChanged

Для каждого поля в сценарии св-ва backgroundcolor пишем (например для 1 колонки ):
if( getrow() = currentrow() and describe( 't_colindex.text' ) = '1', 0,255)

для второй соотв.:
if( getrow() = currentrow() and describe( 't_colindex.text' ) = '2', 0,255)

часть выражения "getrow() = currentrow()" определяет строку
часть выражения "describe( 't_colindex.text' ) = '2'" определяет колонку

сам не пробовал (только что придумал :) ), но думаю должно сработать.
...
Рейтинг: 0 / 0
09.12.2003, 06:44
    #32347220
Andyn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсветка текущего поля при редактировании
PaulJB
А что если заделать так:
добавить текстовое поле t_colindex
в него записываем индекс или имя (в зависимости что обрабатывать см. ниже) активной колонки (поля) в событии ItemFocusChanged
....
сам не пробовал (только что придумал :) ), но думаю должно сработать.


Да, так я тоже пробовал, только вместо текста использовал computed field, действительно все работает. Есть только один минус - для каждого столбца приходится писать свое выражение. Попытался придумать что-то универсальное, чтобы можно было всем столбцам сразу установить один скрипт - не вышло, нет аналогов CurrentRow() и GetRow() для столбца. Остается только написать в Sybase, может в следующих версиях добавят. А пока остановился на варианте PaulJB .
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подсветка текущего поля при редактировании / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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