Переключение на Главную Страницу Страницы: 1 [2] 3 4 ... 6 ОтправитьПечать
Очень популярная тема (более 25 ответов) Артуру, до восстребования (число прочтений - 25869 )
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #15 - 27. Мая 2008 :: 15:19
Печать  
ну давай тогда в таком случае не принимать параметров, пока не инициализируем окно контрола.
А то в конструкторе присваиваешь значения а без толку.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Артуру, до восстребования
Ответ #16 - 27. Мая 2008 :: 16:22
Печать  
Скорее, надо просто еще чуток подумать.

Что нужно в данном случае?
Возможность

1. СоздатьОбъект() для CComponentClass - без вызова конструкторов вообще
2. Дополнительная инициализация необходимых контекстов-членов (допустим, окна контрола)
3. Вызов всех пользовательских конструкторов в нужном порядке

Возможно, вот эту идею http://www.1cpp.ru/forum/YaBB.pl?num=1211358967/3#3
надо довести до ума, чтобы CComponentClass умел выполнять п.1 и полностью п.3.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #17 - 28. Мая 2008 :: 11:25
Печать  
kms писал(а) 27. Мая 2008 :: 16:22:
Скорее, надо просто еще чуток подумать.

Что нужно в данном случае?
Возможность

1. СоздатьОбъект() для CComponentClass - без вызова конструкторов вообще
2. Дополнительная инициализация необходимых контекстов-членов (допустим, окна контрола)
3. Вызов всех пользовательских конструкторов в нужном порядке

Возможно, вот эту идею http://www.1cpp.ru/forum/YaBB.pl?num=1211358967/3#3
надо довести до ума, чтобы CComponentClass умел выполнять п.1 и полностью п.3.

Я как раз и подразумевал, что для наследников от спец.классов типа ТП и АктивИкс можно реализовать спец. схему инициализации.
Сделать ее очень просто.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Артуру, до восстребования
Ответ #18 - 28. Мая 2008 :: 19:41
Печать  
Вижу предложение - http://www.1cpp.ru/forum/YaBB.pl?num=1211358967/11#11
Но идея добавления дополнительных конструкторов для инициализации спецклассов совсем не греет.

  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #19 - 29. Мая 2008 :: 04:15
Печать  
kms писал(а) 27. Мая 2008 :: 16:22:
1. СоздатьОбъект() для CComponentClass - без вызова конструкторов вообще
2. Дополнительная инициализация необходимых контекстов-членов (допустим, окна контрола)
3. Вызов всех пользовательских конструкторов в нужном порядке

Можно и вот так сделать, без добавления доп.конструкторов Улыбка
Правда, немного пострадает совместимость, так что решайте, какой вариант предпочесть, с точки зрения реализации оба варианты почти одинаковы Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #20 - 30. Мая 2008 :: 10:59
Печать  
Ну что решаем? Предпочтем последний вариант?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Артуру, до восстребования
Ответ #21 - 30. Мая 2008 :: 14:09
Печать  
artbear писал(а) 29. Мая 2008 :: 04:15:
Правда, немного пострадает совместимость, так что решайте, какой вариант предпочесть, с точки зрения реализации оба варианты почти одинаковы Улыбка

А чего там будет с совместимостью?
  

De quelle planète es-tu?
Наверх
 
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Артуру, до восстребования
Ответ #22 - 01. Июня 2008 :: 09:59
Печать  
Артур, подскажи чайнику  Подмигивание
Есть класс, в котором создан объект "Перехватчик" для того, чтобы проверять, когда мышка потеряет фокус указанного реквзита.
В форме обработки я создаю два экземпляра одного класса и в каждом указываю за каким реквизитом "следить".
Первый экземпляр обрабатывает события отлично, а второй - как не существует обработки события.
Т.е. объект "Перехватчик" может существовать на форме в единственном экземпляре?
Может есть какой-либо вариант обрабатывать события формы в разных экземплярах классов?
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #23 - 02. Июня 2008 :: 03:47
Печать  
AndreyM писал(а) 01. Июня 2008 :: 09:59:
Артур, подскажи чайнику  Подмигивание
Есть класс, в котором создан объект "Перехватчик" для того, чтобы проверять, когда мышка потеряет фокус указанного реквзита.
В форме обработки я создаю два экземпляра одного класса и в каждом указываю за каким реквизитом "следить".
Первый экземпляр обрабатывает события отлично, а второй - как не существует обработки события.
Т.е. объект "Перехватчик" может существовать на форме в единственном экземпляре?
Может есть какой-либо вариант обрабатывать события формы в разных экземплярах классов?

Заводи новую тему.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #24 - 02. Июня 2008 :: 03:50
Печать  
kms писал(а) 30. Мая 2008 :: 14:09:
artbear писал(а) 29. Мая 2008 :: 04:15:
Правда, немного пострадает совместимость, так что решайте, какой вариант предпочесть, с точки зрения реализации оба варианты почти одинаковы Улыбка

А чего там будет с совместимостью?

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

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Артуру, до восстребования
Ответ #25 - 02. Июня 2008 :: 09:19
Печать  
artbear писал(а) 02. Июня 2008 :: 03:50:
Ну типа раньше народ ожидал, что класс-контрол не инициализирован, могли что-то писать, исходя из этого, а теперь будет по-другому.
Мелочь, конечно.

Ну, это да.
Но, думаю, не страшно это.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #26 - 02. Июня 2008 :: 09:45
Печать  
Артем, открывай баг, сделаю.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3046
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Артуру, до восстребования
Ответ #27 - 02. Июня 2008 :: 12:18
Печать  
kms писал(а) 20. Мая 2008 :: 23:46:
Arta писал(а) 20. Мая 2008 :: 23:23:
Миш, есть ли какие рамки по времени определения свойств ЦветЛиний, ЦветФонаВыделения, ЦветФона, СтиляЗаголовков, Шрифта?
Сегодня обнаружил что в конструкторе наследника установка этих свойств (а может и других) не дает результата.

Я все проспал?

Ну да, не дает.

Контрола-то еще нет, есть только объект.
Контрол инициализируется при выполнения метода "СоздатьЭлементУправления", но после выполнения конструктора.
Вообще-то это неправильно, но это вопрос не к ТП, а к реализации ООП.

Считаю что это проблема реализации ТП (вовсе не ООП). А точнее проблема связывания свойств CV7TableField и CV7CursorGridCtrl. Проблема вполне решаема путем буферизации свойств TF при не созданном Grid.

100% должен работать такой условный код:
Процедура ПриОткрытии()
 гТП=СоздатьОбъект("ТабличноеПоле");
 гТП.ЦветЛиний = Синий; //или установка свойств в конструкторе наследника ТП (случай Arta)
КонецПроцедура
Процедура ФормаПриСоздании(_Форма)
 _Форма.СоздатьЭлементУправления(гТП, Форма.Рекв);
КонецПроцедура


А так же это будет первый и основной шаг к раннему созданию ЭУ. Например в ПриОткрытии.
(kms знает о чем я)

И не надо добавлять телегу условностей к ООП.
  

1&&2&&3
Наверх
 
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Артуру, до восстребования
Ответ #28 - 02. Июня 2008 :: 17:44
Печать  
artbear писал(а) 02. Июня 2008 :: 03:47:
AndreyM писал(а) 01. Июня 2008 :: 09:59:
Артур, подскажи чайнику  Подмигивание
Есть класс, в котором создан объект "Перехватчик" для того, чтобы проверять, когда мышка потеряет фокус указанного реквзита.
В форме обработки я создаю два экземпляра одного класса и в каждом указываю за каким реквизитом "следить".
Первый экземпляр обрабатывает события отлично, а второй - как не существует обработки события.
Т.е. объект "Перехватчик" может существовать на форме в единственном экземпляре?
Может есть какой-либо вариант обрабатывать события формы в разных экземплярах классов?

Заводи новую тему.

Артур, завел тему: http://www.1cpp.ru/forum/YaBB.pl?num=1212416478
Пока только смотрят - ответов нет.
Может ты взглянешь, по свободе. Наглядный пример приложен.
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
AndreyM
Full Member
***
Отсутствует



Сообщений: 166
Местоположение: Харьков
Зарегистрирован: 13. Февраля 2008
Пол: Мужской
Re: Артуру, до восстребования
Ответ #29 - 05. Июня 2008 :: 07:03
Печать  
Артур, не знаю кому написать Алексею aka АЛьФ или тебе, но можешь посмотреть (в ночной сборке от 02.06.08 всё нормально, а от 05.06.08 - проблемка)
Код
Выбрать все
// здесь формула кнопки "кнСтатик", к примеру "Выполнить()"
//...
АктивИкс = СоздатьОбъект("АктивИкс");
АктивИкс.УстановитьАтрибут(Конт.Форма,"кнСтатик");
//...
// а после УстановитьАтрибут: "//" 


у меня эта проблема выскочила на создаваемых атрибутах формы,
но на кнопках, созданных в конфигураторе, та же проблема.
В обоих случаях использовался FormEx 86
  

Правильно поставленный вопрос, уже содержит половину ответа.
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 3 4 ... 6
ОтправитьПечать