powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / open() возвращает -1
8 сообщений из 8, страница 1 из 1
open() возвращает -1
    #36936623
WarmAndSunnyDay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый вечер.
Проблема следующая: я объявляю переменную-окно, задаю его атрибуты и затем хочу открыть уже объявленный экземпляр. Open возвращает -1. При попытке открыть не экземпляр, а класс всё отрабатывает

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
....
w_select_column_for_avtonum lw_sel
w_sel.il_row_count = ll_col_count

lw_sel = CREATE w_select_column_for_avtonum

res=open(lw_sel)         //- 1 
res=open(w_select_column_for_avtonum)                    //+ 1 

...
Рейтинг: 0 / 0
open() возвращает -1
    #36936628
WarmAndSunnyDay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
w_select_column_for_avtonum lw_sel

lw_sel = CREATE w_select_column_for_avtonum

w_sel.il_row_count = ll_col_count


res=open(lw_sel)         //- 1 
res=open(w_select_column_for_avtonum)                    //+ 1 


пардон, строки перепутал
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936640
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WarmAndSunnyDay
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
w_select_column_for_avtonum lw_sel

lw_sel = CREATE w_select_column_for_avtonum

w_sel.il_row_count = ll_col_count


res=open(lw_sel)         //- 1 
res=open(w_select_column_for_avtonum)                    //+ 1 


пардон, строки перепутал
Уберите строку с CREATE она здесь лишняя. Экземпляр типа создастся при вызове функции open
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936753
armblg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WarmAndSunnyDay,

Create здесь действительно лишнее.
Экземпляр класса открывается так:

Код: plaintext
1.
2.
3.
w_select_column_for_avtonum lw_sel

res=open(lw_sel, 'w_select_column_for_avtonum')         //+ 1 
lw_sel.il_row_count = ll_col_count

и обращение к нему идет через переменную, а

Код: plaintext
res=open(w_select_column_for_avtonum)                    //+ 1 

есть именно открытие класса
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936766
WarmAndSunnyDay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, что откликнулись!
я уже пробовал так делать. builder почему то не инициализирует атрибуты класса, если не написать CREATE.
пробовал 2мя способами:
Код: plaintext
1.
2.
3.
	w_select_column_for_avtonum lw_sel
           lw_sel.il_row_count = ll_col_count
	open(lw_sel)
	
Код: plaintext
1.
2.
w_select_column_for_avtonum lw_sel
           open(lw_sel)
           lw_sel.il_row_count = ll_col_count

и в обоих случаях "Код 2 Обращение к несуществующему объекту"
(lw_sel.il_row_count = ll_col_count)
суть в том, что атрибуты класса нужно присвоить до открытия окна
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936767
armblg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и обращение к нему делается так:
Код: plaintext
w_select_column_for_avtonum.il_row_count = ll_col_count

по уму ООП еще надо переменную сделать Privete(Protected) и реализовать методы get и set, хотя не зная деталей утверждать не берусь, возможно так проще.
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936785
armblg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WarmAndSunnyDayспасибо, что откликнулись!
я уже пробовал так делать. builder почему то не инициализирует атрибуты класса, если не написать CREATE.
пробовал 2мя способами:
Код: plaintext
1.
2.
3.
	w_select_column_for_avtonum lw_sel
           lw_sel.il_row_count = ll_col_count
	open(lw_sel)
	
Код: plaintext
1.
2.
w_select_column_for_avtonum lw_sel
           open(lw_sel)
           lw_sel.il_row_count = ll_col_count

и в обоих случаях "Код 2 Обращение к несуществующему объекту"
(lw_sel.il_row_count = ll_col_count)
суть в том, что атрибуты класса нужно присвоить до открытия окна

нет, так не пойдет. нельзя присвоить атрибуты несуществующему объекту. Для окна Open - аналог Create для UserObject. И Create для окна делать не стОит. Перекиньте через внешнюю переменную (инишку наконец), считывая значение в событии Open окна.
...
Рейтинг: 0 / 0
open() возвращает -1
    #36936805
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WarmAndSunnyDayсуть в том, что атрибуты класса нужно присвоить до открытия окна
Для этого существует передача аргументов в окно через OpenWithParm() (см. справку и примеры там)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / open() возвращает -1
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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