| 
			
			 | 
		#1 | 
| 
			
			 Модератор 
		
			
	 | 
	
	
	
		
		
			
			 
			
			Есть форма 
		
		
		
		
		
		
		
	ClassDeclaration: public class MyCustomForm extends ObjectRun { int _top, _left; } Хотел унаследовать от нее другую, правлю ClassDeclaration: public class FormRun extends MyCustomForm { } -- Ошибка 92: Некорректное наследование? Кто неправ?  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Хотел унаследовать от нее другую, правлю ClassDeclaration: 
public class FormRun extends MyCustomForm { } -- Ошибка 92: Некорректное наследование?  | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			public class FormRun extends MyCustomForm
		
	 
 | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Модератор 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Ты пытаешься создать свой FormRun, да еще и наследуешь его от своей формы...
		
	 
Цитата: 
	
		
			вообще-то FormRun это класс. Причем не доступный в исходных кодах
		
	 
 | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Блин, что-то я сам запутался. 
		
		
		
		
		
		
		
	FormRun - это не форма. И наследовать его можно( если можно вообще) то от класса: PHP код: 
	
			
	И ГЛАВНОЕ - а зачем это вообще нужно. В чем цель ? Какая задача ?  | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Модератор 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Пока что - сохранять и восстанавливать Top и Left формы. Писать каждый раз один и тот же код для реализации всего, что для xSysLastValue требуется - лениво.  
		
		
		
		
		
		
		
	Есть конечно другие способы это делать, но так красивше как-то ( было бы    )
		 | 
| 
	
 | 
| 
			
			 | 
		#7 | 
| 
			
			 ---------------- 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Если очень хочется, то можно поизменять классик SysSetupFormRun. Он, как раз, унаследован от FormRun и он же создается через ClassFactory.
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Пока что - сохранять и восстанавливать Top и Left формы.
		
	 
1. Пишется класс наследник FormRun 2. Перекрываются у него необходимые метода - init(), close() 3. Создаваемые формы наследуются от созданного класса.  | 
| 
	
 | 
| 
			
			 | 
		#9 | 
| 
			
			 Модератор 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Уже пробовал - "Некорректное наследование"
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#10 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Уже пробовал - "Некорректное наследование"
		
	 
Можно вот так: public class dem_FormRun extends FormRun { } где dem_FormRun наследник от FormRun, но толку никакого, так как перекрытыем методы в dem_FormRun'е все равно не отрабатывают. ![]() А ты видел формы у которых в ClassDeclaration написано что-то иное, чем: public class dem_FormRun extends ObjectRun  | 
| 
	
 | 
| 
			
			 | 
		#11 | 
| 
			
			 ---------------- 
		
			
	 | 
	
	
	
		
		
			
			
			Поясню
			 
			
			(см. предыдущий постинг) методы перекрытые в SysSetupFormRun будут отрабатывать во всех формах системы (см. пример)
		 
		
		
		
			 | 
| 
	
 | 
| 
			
			 | 
		#12 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			методы перекрытые в SysSetupFormRun будут отрабатывать во всех формах системы
		
	 
 | 
| 
	
 | 
| 
			
			 | 
		#13 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Re: Почему формы не наследуются?
			 
			
			Немного не в тему. Думаю, что будет полезным 
		
		
		
		
		
		
		
	http://technet.navision.com/usered/B...pplication.htm http://technet.navision.com/usered/B...orms/Forms.htm Особенно рекомендую No code in the forms!: http://technet.navision.com/usered/B...ormsNoCode.htm ![]() Видимо формы не наследуются, поскольку считается, что "The purpose of the forms is to support the presentation tier in the three tier client/server model, so you should not find any business logic in the forms." Поэтому предполагается, что формы "используют" классы, а не наследуют. На самом деле согласен, что технически можно бы и наследовать. Тогда получится что-то вроде вложенных форм и... компонентов COM. Но кто работал с COM компонентами согласится, что использование компонентов не есть однозначно хорошо.  | 
| 
	
 | 
| 
			
			 | 
		#14 | 
| 
			
			 Moderator 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			методы перекрытые в SysSetupFormRun будут отрабатывать во всех формах системы
		
	 
Цитата: 
	
		
			Пока что - сохранять и восстанавливать Top и Left формы.
		
	 
Вариант предложеный Warm интересен, но в таком случае он не решает проблемы. Может есть еще какие-нибудь варианты ? Цитата: 
	
		
			Но кто работал с COM компонентами согласится, что использование компонентов не есть однозначно хорошо.
		
	 
 
		 | 
| 
	
 |