как предотвратить выделение некоторых столбцов при выборе строки - PullRequest
1 голос
/ 08 июня 2011

У меня есть полудинамически созданное окно (и я использую PowerBuilder 10.5). Теперь есть пара столбцов, которые могут иметь разные цвета, и я хочу видеть эти цвета при выборе строки. Однако я не знаю, как отменить выбор этих столбцов и оставить первые пару столбцов выбранными. Функция выделения в нашем приложении просто выполняет dw.selectrow (x, true).

С уважением, Мэринус

Ответы [ 2 ]

0 голосов
/ 08 июня 2011

Если вы хотите использовать SelectRow (), возможно, поможет использование SetRowFocusIndicator (). IIRC (это было довольно близко к десятилетию * s * с тех пор, как я его использовал), он отключает раскраску строк в пользу нового метода.

Другой способ, который приходит на ум, - это установить выражение для цвета фона, которое использует GetRow () и CurrentRow (). Это не будет моим первым выбором, так как он не позволяет пользователям с нарушениями зрения выбирать свои цвета с помощью стандартного выбора цвета Windows для чего-то, с чем они могут иметь дело, но если вы не уверены в цветовой индикации на выборочных столбцах, это будет будь способ идти.

Удачи,

Терри.

0 голосов
/ 08 июня 2011

Не думаю, что вы получите то, что хотите, используя selectrow.Если вам не нужно многократный выбор, вы можете изменить фон текущей строки с помощью выражения в окне данных.Если вы хотите, чтобы некоторые столбцы оставались нормальными, вы можете сделать это с прямоугольником позади тех, которые вы хотите выделить, вместо изменения цвета строки.Если вам нужно выделить несколько строк, вам нужно будет имитировать множественный выбор, добавив фиктивный столбец и используя его для управления фоном, и, конечно же, вам нужно будет обрабатывать выбор и отмену выбора в событии clicked.Если у вас есть код, который работает с выбранными строками, вам придется изменить их, чтобы использовать новую схему, например, проверив значение в вашем фиктивном столбце.

...