Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
	
		
		
			Правила форума
			Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут 
закрыты.
Читайте 
требования к создаваемым темам.
		
		
 
	 
	
		
		
			
			- 
				AlexBlack
			
- 
				
- Постоялец
  
- 
			 
 
-  
- Сообщения: 324
- Зарегистрирован: 18.07.2005 (Пн) 19:14
- Откуда: Киефф, Юкрейн...
- 
				
			
			
			
			 AlexBlack » 02.08.2005 (Вт) 16:27
 AlexBlack » 02.08.2005 (Вт) 16:27 
			
			Скажем я сделал кнопку в UserControl. У нее есть свойство Enabled.
И всё работает класно кроме TABstop-a.
Как из рантайма убрать CanGetFocus или передать фокус следующему контролу по списку?
			
		 
		
		 
	 
	
	
		
		
			
			- 
				Sur
			
- 
				
- Обычный пользователь
  
- 
			 
 
-  
- Сообщения: 91
- Зарегистрирован: 14.07.2003 (Пн) 20:54
- Откуда: C2H5OH
- 
				
			
			
			
			 Sur » 02.08.2005 (Вт) 22:33
 Sur » 02.08.2005 (Вт) 22:33 
			
			А ты можешь, при таких условиях, убрать CanGetFocus у ю.контрола из IDE ?
Полюбому SendKeys "{TAB}" поможет. Главное правельно ввернуть.
			
		 
		
		 
	 
	
	
		
		
			
			- 
				AlexBlack
			
- 
				
- Постоялец
  
- 
			 
 
-  
- Сообщения: 324
- Зарегистрирован: 18.07.2005 (Пн) 19:14
- Откуда: Киефф, Юкрейн...
- 
				
			
			
			
			 AlexBlack » 03.08.2005 (Ср) 11:58
 AlexBlack » 03.08.2005 (Ср) 11:58 
			
			А как съимитировать нажатие "Shift-Tab". Нужно же поймать нажата ли кнопка. С хуками возиться лень...
			
		 
		
		 
	 
	
	
		
		
			
			- 
				alibek
			
- 
				
- Большой Человек
  
- 
			
			
-  
- Сообщения: 14205
- Зарегистрирован: 19.04.2002 (Пт) 11:40
- Откуда: Russia
			
			
			 alibek » 03.08.2005 (Ср) 12:05
 alibek » 03.08.2005 (Ср) 12:05 
			
			SendKeys "^{TAB}"
			Lasciate ogni speranza, voi ch'entrate.
		 
		
		 
	 
	
	
		
		
			
			- 
				AlexBlack
			
- 
				
- Постоялец
  
- 
			 
 
-  
- Сообщения: 324
- Зарегистрирован: 18.07.2005 (Пн) 19:14
- Откуда: Киефф, Юкрейн...
- 
				
			
			
			
			 AlexBlack » 03.08.2005 (Ср) 12:23
 AlexBlack » 03.08.2005 (Ср) 12:23 
			
			Ано-то понятно.... А вот как распознать нажата ли клавиша ALT....
			
		 
		
		 
	 
	
	
		
		
			
			- 
				JohnCR
			
- 
				
- Обычный пользователь
  
- 
			
			
-  
- Сообщения: 75
- Зарегистрирован: 14.06.2005 (Вт) 19:03
- 
				
			
			
			
			 JohnCR » 03.08.2005 (Ср) 12:42
 JohnCR » 03.08.2005 (Ср) 12:42 
			
			Ано-то понятно.... А вот как распознать нажата ли клавиша ALT....
- Код: Выделить всё
- 'пример...
 Option Explicit
 'на форме один таймер (timer1)
 Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
 Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
 Private Sub Form_Load()
 Timer1.Interval = 1
 Timer1.Enabled = True
 Form1.Caption = "Нажми АLT"
 End Sub
 Private Sub Timer1_Timer()
 Dim KeyState As Integer
 KeyState = GetAsyncKeyState(vbKeyMenu)
 If KeyState Then
 MsgBox ("Нажата клавиша ALT.")
 End If
 End Sub
Но скорее всего, можно обойтись без этого. При получении фокуса сразу используй SendKeys.
 
		
		 
	 
	
	
	
	Вернуться в Visual Basic 1–6
	
	Кто сейчас на конференции
	Сейчас этот форум просматривают: AhrefsBot, Google-бот и гости: 6