Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: Классы
     
    
Добавлено: 05.11.06 13:51
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
    
 Graffin
      
       
  
Еще есть темка, над которой ломаю голову..Есть задание создать класс List, предоставляющий хранение списка обьектов, операции по добавлению объектов и доступа к ним, и имеющий событие Changed, которое вознивает при изменении размера списка..Что-то я искал в нете, но не нашел такое..Посдкажите, как это сделать..Просто поверхностно, что использовать и какой код..
 
    
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 7
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа:
 Neco
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 247906854 
Вопросов: 133
Ответов: 882
      
 Web-сайт:  
 Профиль |  | #1
      
Добавлено:  05.11.06 14:21
       
    
       
  
какой язык-то хоть?
 
    
если ООПэшный, то наследуй стандартный список, оверрайдь (перегружай, что ли?) методы add, remove,clear и добавляй в них вызов события.
если не ООПэшный, то создаёшь класс, в нём массив элементов или коллекция, те же методы add,remove,clear (только уже твои собственные) и вызов в них события Changed.
только, наверное, зря это всё: список, это вещь не умеющая изменяться сама собой - это делается из кода, использующего этот список, так что достаточно в этом коде, во всех местах, где происходит изменение списка (если много, то можно создать подпроцедуры AddToList, RemoveFromList, ClearList) вызывать желаемую процедуру и обойтись обычным list'ом.
хотя конечно от конкретных условий зависит.
поверхностно всё...
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа:
 -АлександР-
![]()
Вопросов: 55
Ответов: 1008
      
 Web-сайт:  
 Профиль |  | #2
      
Добавлено:  05.11.06 14:27
       
    
       
  
Это на VB6?
 
    
Ну здесь два варианта:
1)Создать ActiveX Control, поместив на него ListBox и объявив это событие. 
2)Потруднее, но если нужен именно класс,то ...
В модуле класса програмно вызвать listbox, и также raiseevent [это событие] 
Подробнее надо?
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа:
 Sacred Phoenix
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 304238252 
Вопросов: 52
Ответов: 927
      
 Профиль |  | #3
       
Добавлено:  05.11.06 14:52
       
    
       
  
 
    
)
Overloaded members are used to provide different versions of a property or method that have the same name, but that accept different number of parameters, or parameters with different data types.
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа:
 Fever
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Вопросов: 60
Ответов: 808
      
 Профиль |  | #4
       
Добавлено:  05.11.06 15:45
       
    
       
  
в классе
 
    
private mList() as variant
private mListCnt as long
public property get Item(byval Index as long) as variant
item=mlist(index)
end property
public property let Item(Byval Index as long,vData as variant)
mlist(index)=vdata
end property
private sub Add(n as variant)
    redim mlist(mlistcnt)
    mlist(mlistcnt)=n
    mlistcnt=mlistcnt+1
end sub
и тому подобное....
Или можно через Collection. Все зависит от того List чего ты собрался сделать.
		
	  
			 
	
		 
    
       
    
Номер ответа: 5 
      
Автор ответа:
 Artyom
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Разработчик
Вопросов: 130
Ответов: 6602
      
 Профиль |  | #5
       
Добавлено:  05.11.06 21:06
       
    
       
  
пусть объяснит сначала подо что он пишет
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 6 
      
Автор ответа:
 Graffin
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Вопросов: 4
Ответов: 7
      
 Профиль |  | #6
       
Добавлено:  05.11.06 23:11
       
    
       
  
Мне надо под Vb.Net
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 7 
      
Автор ответа:
 Graffin
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Вопросов: 4
Ответов: 7
      
 Профиль |  | #7
       
Добавлено:  05.11.06 23:17
       
    
       
  
А мне интересно только как можно создать событие Changed..Никак не найду нигде..