powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выделение активной строки в классе GRID
13 сообщений из 13, страница 1 из 1
Выделение активной строки в классе GRID
    #36907005
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для выделения активной строки в grid использую
Код: plaintext
1.
2.
3.
	PROCEDURE Init
		this.nrecno=RECNO()
		this.SetAll("DynamicBackColor" ,;
и
Код: plaintext
1.
	PROCEDURE AfterRowColChange
В oop_last.rar имеется класс grd,в котором активная строка выделяется,но не могу понять каким способом ?
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907033
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIAN,

1) На 9-ке в свойствах Грида есть возможность подсвечивать активную строку
2) если фоксовые цвета не нравятся, ищи в форуме, неоднократно эта тема обсуждалась
3) найди на universalthread.com класс gridhighlighter Ника Неклюдова. Им очень легко пользоваться для подсветки, в том числе и активной строки.
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907099
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
igorbik,
Спасибо!,действительно,если
Код: plaintext
.AllowCellSelection=.F.
,то активная строка будет выделена
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907230
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
igorbikLUCIAN,
2) ищи в форуме, неоднократно эта тема обсуждалась
3) найди на universalthread.com класс gridhighlighter Ника Неклюдова. Им очень легко пользоваться для подсветки, в том числе и активной строки.

OOP_LAST.RAR я как раз на этом форуме и нашел и хочу в классах из OOP_LAST.RAR разобраться, а послать к Нике Неклюдовой всякий может
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907252
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIANigorbikLUCIAN,
2) ищи в форуме, неоднократно эта тема обсуждалась
3) найди на universalthread.com класс gridhighlighter Ника Неклюдова. Им очень легко пользоваться для подсветки, в том числе и активной строки.

OOP_LAST.RAR я как раз на этом форуме и нашел и хочу в классах из OOP_LAST.RAR разобраться, а послать к Нике Неклюдовой всякий может

гы, ой, не прошло и 2-х лет, как его нашли

ну по св-ву,
которое автоматом подсвечивает строку
уже подсказали.

так что там еще интересно.
в том примере с неким разбором шагов интересна не подсветка и т.д.,
а интересен некий принцип(стиль) разработки,
в котором предусмотрена некая взаимосвязь классов,
наследование,
некий способ настройки форм отображения списков,
хранения настроек, получения на основе этих настроек данных,
использование спец. классов посредников
и т.д.
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907359
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прошелмимо
ну по св-ву,
которое автоматом подсвечивает строку
уже подсказали.

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

В классе GRD для подсветки строки .AllowCellSelection=.F. как раз и не используется,так как при
.AllowCellSelection=.F. grid не корректируется. Этот класс используется исключительно для
курсорадаптеров ?
Из oop_last.rar я извлёк GRIDTOEXCELL и начал применять в своих формах в виде кнопки с кодом:
Код: plaintext
1.
2.
3.
oGrid=This.parent.grdOsto
cFileName=''
DO GRIDTOEXCELL WITH oGrid,cFileName
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907462
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIANпрошелмимо
ну по св-ву,
которое автоматом подсвечивает строку
уже подсказали.

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

В классе GRD для подсветки строки .AllowCellSelection=.F. как раз и не используется,так как при
.AllowCellSelection=.F. grid не корректируется. Этот класс используется исключительно для
курсорадаптеров ?
Из oop_last.rar я извлёк GRIDTOEXCELL и начал применять в своих формах в виде кнопки с кодом:
Код: plaintext
1.
2.
3.
oGrid=This.parent.grdOsto
cFileName=''
DO GRIDTOEXCELL WITH oGrid,cFileName


гы, это каласс может использоваться для чего угодно.
в этом проекте просто посредством КАДа тянут данные
и + к его настройкам есть доп.настройки с добавчиком
для настройки внешнего вида морды лица.

это фенечки.
Вы не с того начали,
и не заметили самого главного.

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

+ там показан особый стиль - приемы ООП в фокспро.
а фенечки - это так - замеждупрочим.
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907509
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIANigorbikLUCIAN,
3) найди на universalthread.com класс gridhighlighter Ника Неклюдова. Им очень легко пользоваться для подсветки, в том числе и активной строки.
послать к Нике Неклюдовой всякий может
Я посылал к мужику, а не женщине.
Всякий это тоже не может, вот ведь Вы нигде кроме как здесь не искали? А мужик пишет классы must have. Благодаря им у меня работают все подсветки гридов, и при этом по разным условиям по-разному! А его класс griddragdropper вообще без аналогов!
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907694
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igorbikLUCIANigorbikLUCIAN,
3) найди на universalthread.com класс gridhighlighter Ника Неклюдова. Им очень легко пользоваться для подсветки, в том числе и активной строки.
послать к Нике Неклюдовой всякий может
Я посылал к мужику, а не женщине.
Всякий это тоже не может, вот ведь Вы нигде кроме как здесь не искали? А мужик пишет классы must have. Благодаря им у меня работают все подсветки гридов, и при этом по разным условиям по-разному! А его класс griddragdropper вообще без аналогов!

а ничего, что классы писались под раннии версии,
и для 9-ки некоторые решения являются лисапедом?

нет, как для "подсмотреть" что-то вполне приемлимый вариант.
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36907880
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кажется я нашел, где в классе grd выделяются строки это
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
	PROCEDURE KeyPress
		LPARAMETERS nKeyCode, nShiftAltCtrl
		with this
			If (nShiftAltCtrl= 1  and Inlist(nKeyCode,  42 ,  43 ,  45 ,  50 ,  56 ,  86 )) ;
			   or ;
			   (nShiftAltCtrl= 2  and Inlist(nKeyCode, 146 ,  147 ))
			   
				if nShiftAltCtrl= 1  and nKeyCode= 86   and version( 2 )= 2    &&  shift + F3
					nodefault 
					select (.RecordSource)
					browse normal
				else
					* шифт + стрелка вниз  или  стрелка вниз  (пометка записей)
					* шифт + '-' - разметить все
					* шифт + '+' - отметить все
					* шифт + '*' - инверсия отмеченных
					nodefault 
					.KeyPressHotKeys(nKeyCode, nShiftAltCtrl)
					return
				endif

			else
....................................и.т.д
Полностью схему(гармонию) проекта представленного в OOP_LAST попробую применить в новом маленьком проекте
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36908006
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIANКажется я нашел, где в классе grd выделяются строки это
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
	PROCEDURE KeyPress
		LPARAMETERS nKeyCode, nShiftAltCtrl
		with this
			If (nShiftAltCtrl= 1  and Inlist(nKeyCode,  42 ,  43 ,  45 ,  50 ,  56 ,  86 )) ;
			   or ;
			   (nShiftAltCtrl= 2  and Inlist(nKeyCode, 146 ,  147 ))
			   
				if nShiftAltCtrl= 1  and nKeyCode= 86   and version( 2 )= 2    &&  shift + F3
					nodefault 
					select (.RecordSource)
					browse normal
				else
					* шифт + стрелка вниз  или  стрелка вниз  (пометка записей)
					* шифт + '-' - разметить все
					* шифт + '+' - отметить все
					* шифт + '*' - инверсия отмеченных
					nodefault 
					.KeyPressHotKeys(nKeyCode, nShiftAltCtrl)
					return
				endif

			else
....................................и.т.д
Полностью схему(гармонию) проекта представленного в OOP_LAST попробую применить в новом маленьком проекте

Вы только обратите внимание на то, что у класса есть свойство - ссылка на поле, которое в курсоре используется для хранения отметки.
cCheck
по умолчанию = "checked"

для примера есть списочная форма с
таким запросом:
select 0 as checked, * ...

ок, понравится - разовьем тему "красной кнопки" (построения фреймворков)
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36908089
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прошелмимоВы только обратите внимание на то, что у класса есть свойство - ссылка на поле, которое в курсоре используется для хранения отметки.
cCheck
по умолчанию = "checked"

Обратил внимание,если для GRD подсунуть свой CAD без cChecked ,то множественное выделение не
работает.
...
Рейтинг: 0 / 0
Выделение активной строки в классе GRID
    #36908209
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LUCIANпрошелмимоВы только обратите внимание на то, что у класса есть свойство - ссылка на поле, которое в курсоре используется для хранения отметки.
cCheck
по умолчанию = "checked"

Обратил внимание,если для GRD подсунуть свой CAD без cChecked ,то множественное выделение не
работает.

а почему оно должно работать?
так и задумано.
при наличии в курсоре поля, соответствующего(указанного) (в)настройке cCheck - будет работать,
если такого поля нет - не будет.

как написано, так и работает
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
if !Empty(this.cCheck) and Vartype(this.cCheck)="C" ;
   and !empty(fsize(this.cCheck, lcAlias))
	* определяем поле-маркер в курсоре
	lcFldCheck = lcAlias + "." + Alltrim(this.cCheck)
	if type(lcFldCheck)="N"
		luOnValue  =  1 
		luOffValue =  0 
	else
		luOnValue  = .t.
		luOffValue = .f.
	endi
EndIf
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выделение активной строки в классе GRID
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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