Страница 1 из 2
					
				
				Добавлено: 31 Октябрь 2004, 10:15
				 Гость
				На форуме перидически обсуждается проблема переключения
РУС-ЛАТ в ХР.Может мне очень везет,но почему то у меня этой
проблемы не было на XP,XP+SP1,XP+sp2 как на русских версиях,
так и на анлийских с MUI.Платформы CLARION от с5 до с61.Причем
не только на своем компе,но и на компах заказчиков.Один раз была
проблема у заказчика под WIN2000 при переустановке системы,но
его админ сам решил проблему.Так может быть дело не в кларионе,
а каких то нестандарных настройках ХР? 
Написал: lsgsoftware(155)
			 
			
					
				
				Добавлено: 31 Октябрь 2004, 16:56
				 Гость
				Прблема проявляется только при работе с MDI интерфейсом.
Если Вы используете для своих проектов интерфейс SDI - то
с этой проблемой никогда не столкнетесь (а в C55 еще и с
проблемой переключения потоков). 
С уважением, ТАТА
			 
			
					
				
				Добавлено: 01 Ноябрь 2004, 10:10
				 Aragorn
				А ещё надо поставить Office - тогда в памяти сядет ctfmon.exe и весь букет удовольствий - на лицо...
Написал: Aragorn(147)
			 
			
					
				
				Добавлено: 03 Ноябрь 2004, 16:45
				 Гость
				Дорогая Тата!
Режим MDI я действительно не использую из-за
личных принципиальных соображений.Но чтобы закрыть вопрос
собрал простенький АРР на С61 с MDI-интерфейсом.ОС WINX+SP1+MUI.Установлен MS OFFICE 2003.Как ни странно,но переключение  RUS-LAT работает нормально.Так что может быть
все таки дело не в Clarion?
			 
			
					
				
				Добавлено: 03 Ноябрь 2004, 16:52
				 Aragorn
				Я, конечно, дико извиняюсь за то, что опять влезаю в ваш диалог... а какой комбинацией клавиш вы пользуетесь для переключения?
Написал: Aragorn(147)
			 
			
					
				
				Добавлено: 03 Ноябрь 2004, 18:23
				 Гость
				Переключение Лев.Alt_Пр.Shift-стандарт,а также мышью по
языковой панели,что зачастую удобнее!
			 
			
					
				
				Добавлено: 03 Ноябрь 2004, 18:46
				 Гость
				Влазьте. На то и форум ... 

Чем больше будут "влазить" - тем быстрее "вылезем" ... 
 
А сделайте пожалуйста простой эксперимент на Вашем чудо-компьютере.
- Запустите, что нибудь из MS Office 2003 - например Word;
- Вызовите помощника (Справка -> Показать помощника)
- Щелкните по нему мышкой - откроется желтое окно для запроса
- В нем у Вас тоже нормально с клавиатуры переключается раскладка ?
Спасибо за информацию.
P/S: Если бы всем было бы удобней переключать "мышью по панели" - тогда бы точно проблемы не было ... 
 
C уважением, ТАТА
 
			
					
				
				Добавлено: 04 Ноябрь 2004, 13:03
				 Гость
				из этого следует - помошник написан на кларионе! 

Написал: vad7(154)
 
			
					
				
				Добавлено: 04 Ноябрь 2004, 13:46
				 Гость
				Из этого следует - что в WinXP есть проблемы с переключением
раскладки клавиатуры не зависящие от Clarion и программ на нем
написанных. 
Пример с Word не единственный, но наиболее наглядный.
Проявляется сия проблема при т.н. текстовом вводе -
которые используется в приложениях собранных на Clarion ... 
 
TATA
 
			
					
				
				Добавлено: 25 Ноябрь 2004, 13:42
				 Гость
				Господа ! Я прошу прощения но!
Установка Пунто 
http://WWW.PUNTO.RU Решает эту проблемку
С ХР:)
 
			
					
				
				Добавлено: 25 Ноябрь 2004, 17:43
				 Гость
				Безусловно решает (если отключить дополнительные текстовые службы).
Правда появляются другие - не переключается раскладка на рабочем
столе Windows (XP SP2), но это уже мелочи ...
Разговор был о другом - как решить проблему из Clarion-программ.
ТАТА
			 
			
					
				
				Добавлено: 15 Декабрь 2004, 9:54
				 Гость
				Так все же? Есть решение по переключению раскладки в XP из Клариона?
Написал: Vasiliy(173)
			 
			
					
				
				Добавлено: 15 Декабрь 2004, 12:46
				 Гость
				Привет!
Я переключал язык из Клариона с помощью API-функций.
Посмотри пример - вдруг чем-либо поможет.
Код: Выделить всё
      Program
   INCLUDE('EQUATES.CLW')
   INCLUDE('ERRORS.CLW')
   INCLUDE('KEYCODES.CLW')
Latin    CSTRING('00000409')
Russian  CSTRING('00000419')
Ukraine  CSTRING('00000422')
CurL     string(2)
   MAP
     SwitchKBD(String KBDLayout)
     MODULE('Windows.lib')
      GetKBDLName(*CSTRING),BOOL,PASCAL,RAW,!
                            NAME('GetKeyboardLayoutNameA')
      ActivateKBDL(ULONG,UNSIGNED),ULONG,PASCAL,!
                            NAME('ActivateKeyboardLayout')
     END
   END
LID     cstring(10)
TmpStr  string(50)
Window WINDOW('Тест переключени<255> <255>зыка'),AT(,,185,92), !
                                FONT('MS Sans Serif',8,,FONT:regular),GRAY
       STRING('ID <255>зыка:'),AT(13,11),USE(?String1)
       STRING(@s10),AT(52,11),USE(LID)
       PANEL,AT(94,11,17,11),USE(?Panel1),BEVEL(-1)
       STRING(@s2),AT(95,11,14,10),USE(CurL),CENTER,!
                            FONT(,,COLOR:White,),COLOR(0A00000H)
       ENTRY(@s50),AT(22,38,112,10),USE(TmpStr)
       BUTTON('Язык'),AT(37,71,35,14),USE(?OkButton),DEFAULT
       BUTTON('Cancel'),AT(82,71,36,14),USE(?CancelButton),!
                    STD(STD:Close)
     END
    code
    DO GetKBDL
    open(Window)
    accept
      case accepted()
      of ?OkButton
        Q# = ActivateKBDL(1,0)
        DO GetKBDL
        display(?LID);display(?CurL)
        select(?TmpStr)
        presskey(RightKey)
      end ! case
    end !accept
GetKBDL  ROUTINE
    R# = GetKBDLName(LID)
    case LID
      of Latin   ; CurL = 'En'
      of Russian ; CurL = 'Ru'
      of Ukraine ; CurL = 'Uk'
    else
      CurL = '**'
    end
SwitchKBD Procedure (KBDLayout)
AKL  ULONG
TMP  CSTRING(20)
loc:i Long
 Code
 loc:i = GetKBDLName(Tmp)
 if Tmp<>KBDLayout
   AKL = ActivateKBDL(1,0)
 end
С уважением,
Mit
 
			
					
				
				Добавлено: 15 Декабрь 2004, 17:34
				 Aragorn
				Пардон, но это код типа "Вот ща мы тут нажмём мышкой на эту пимпочку (кнопочку), и у нас переключится раскладка!!!"
А это СОВСЕМ НЕ ТО ЧТО НУЖНО!!!
Нужно, чтобы раскладка по-нормальному переключалась по Ctrl+Shift или Alt+Shift!!!
А то, что предложено, и так ясно, как забацать.
Написал: Aragorn(147)
			 
			
					
				
				Добавлено: 16 Декабрь 2004, 6:04
				 Гость
				Действительно все работает, только глобально для всей программы переключение раскладки определить не удалось. Даже прописав клавиши по умолчанию и спрятав кнопку. Срабатывает только для главного окна, а в каждой форме приходиться прописывать заново. Что не есть удобно 

Написал: Vasiliy(173)