Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JDialog меняет раскладку клавиатуры на ENGL, Как избежать смены раскладки 
:(
    Опции темы
Connie
Дата 6.10.2008, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: 8
Всего: 9



Есть основная форма, при ее показе раскладка клавиатуры меняется на английскую, меняю ее руками на русскую.

Так же есть несколько модальных окон, созданных от JDialog

При их показе раскладка меняется на английскую, не зависимо от того, какая была включена в основной форме. Как включить ту же раскладку, что и в основной форме?
Нашел вот эту тему
http://forum.vingrad.ru/topic-150163.html

Но такой код, в моей программе, в конструкторе диалоговых окон, не помог
Код

public UserDialog(Container owner){
        super();
        Locale locale = new Locale("ru","RU");
        this.setLocale(locale);
        this.getInputContext().selectInputMethod(locale);


Пробовал менять и менять локаль и в конкретном поле ввода

Код

fldName = new JTextField();
fldName.setText("New one");
fldName.getInputContext().selectInputMethod(new Locale("ru","RU"));
Тоже без эффекта

Как быть?
PM MAIL WWW   Вверх
dorogoyIV
Дата 6.10.2008, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



Цитата(Connie @  6.10.2008,  18:56 Найти цитируемый пост)
Как включить ту же раскладку, что и в основной форме?

Код

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;

public class TestLocale extends JFrame
                        implements ActionListener
{
 public TestLocale()
 {
  setLayout(new FlowLayout());
  JButton jb = new JButton("Show new JDialog");
  add(jb);
  jb.addActionListener(this);
 }

 public void actionPerformed(ActionEvent e)
 {
  new MyDialog(this);
 }

 public static void main(String [] args)
 {
  JFrame f = new TestLocale();
  f.setBounds(100, 100, 400, 300);
  f.setDefaultCloseOperation(3);
  f.setVisible(true);
 }
}

class MyDialog extends JDialog
{
 TestLocale test;

 MyDialog(TestLocale test)
 {
  this.test = test;
  setSize(200, 100);

  Locale locale = test.getInputContext().getLocale();
  getInputContext().selectInputMethod(locale);

  setVisible(true);
 }
}

PM MAIL   Вверх
Connie
Дата 7.10.2008, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: 8
Всего: 9



dorogoyIV, спасибо, буду пробовать
Дело в том, что я разрабатываю программу под Линукс, так вот в нем эта проблема есть, а сейчас пришел на работу, сел на комп с Windows, а под ней все нормально   smile 

Не помогло. Это линукс для каждого нового окна, не только под java устанавливает дефолтную раскладку :( Так же и в FF и в программах запущенных под wine. Либо в системе менять дефолтный язык, либо смириться. Скорее второе.

Это сообщение отредактировал(а) Connie - 7.10.2008, 12:02
PM MAIL WWW   Вверх
serger
Дата 8.10.2008, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 19.6.2007
Где: Ижевск

Репутация: нет
Всего: 5



В параметрах клавиатуры, вкладка "раскладка" убрать галочку "Отдельная разкладка для каждого окна"



--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
Connie
Дата 8.10.2008, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: 8
Всего: 9



serger,  smile 
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0442 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.