powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Список всех элементов в DW
5 сообщений из 5, страница 1 из 1
Список всех элементов в DW
    #36052680
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как получить список всеx controls в DW?
...
Рейтинг: 0 / 0
Список всех элементов в DW
    #36052741
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RiskaКак получить список всеx controls в DW?
describe("datawindow.objects")
и распарсить по ~t

Я не помню, только ли контролы там или еще и столбцы буфера DW. Но в любом случае контролы из списка легко отфильтровываются по наличию свойства .band или .visible
...
Рейтинг: 0 / 0
Список всех элементов в DW
    #36054174
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,
Дякую!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Список всех элементов в DW
    #38424894
aamy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Riskadescribe("datawindow.objects")
и распарсить по ~t


Уважаемые подскажите пожалуйста код, который выполняет сие действие - в цикле переребор всех objects.
Заранее спосибо.
...
Рейтинг: 0 / 0
Список всех элементов в DW
    #38425704
Riska1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aamy,
Уберите лишнее. Но принцип, думаю, ясен.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
objs='datawindow~t'+idw.dynamic describe("Datawindow.objects")+'~t'

do while objs<>''
  	pos=pos(objs,'~t')
  	obj=left(objs,pos - 1)
	
	// Michael 11/05/2010 -------------------------
	ls_obj_type = idw.Dynamic Describe(obj + ".Type")
	
	lb_type_found = FALSE
	FOR li_i = 1 TO UpperBound(ls_type_array)
		IF ls_type_array[li_i] = ls_obj_type THEN 
			lb_type_found = TRUE
			EXIT
		END IF
	NEXT
	
	// Add new item into the ddlb_filter /////////////////////////////////////////////////////////////////////
	IF lb_type_found = FALSE AND as_type = 'ALL' THEN 		
		CHOOSE CASE ls_obj_type
				CASE 'datawindow'
						li_pic_index = 1
				CASE 'text'
						 li_pic_index = 6
				CASE 'column'
						 li_pic_index = 2
				CASE 'compute'
						 li_pic_index = 3
				CASE 'rectangle'
						 li_pic_index = 7
				 CASE 'roundrectangle'
						 li_pic_index = 8
				CASE 'line'
						 li_pic_index = 4
				CASE 'oval'
						 li_pic_index = 9
				CASE 'groupbox'
						 li_pic_index = 11
				CASE 'picture', 'bitmap'
						 li_pic_index = 12
				CASE 'button', 'picturebutton'
						 li_pic_index = 5
				CASE ELSE
					 li_pic_index = 13		
		END CHOOSE
		
		tab_1.page_1.ddplb_filter.InsertItem(ls_obj_type, li_pic_index, li_j)
		ls_type_array[li_j] = ls_obj_type
		li_j ++
	END IF ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		
  	objs=mid(objs,pos+1)
  	IF as_type = 'ALL' OR as_type = ls_obj_type OR li_pic_index = 13 THEN of_insertObject (root,obj)
loop
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Список всех элементов в DW
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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