Russian Qt Forum
Ноябрь 25, 2024, 13:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Как сделать сортировку между 2умя txt файлами по строчно (или как то еще)  (Прочитано 8229 раз)
GansNein
Гость
« : Январь 20, 2011, 20:37 »

Все привет!)

начал изучать Qt совсем недавно столкнулся с такой проблемой.

нужно что бы программа могла

При в воде TextEdit к примеру Hello
В ListView появлялось Привет.

Получается в 1 файле хранятся русские слова а в другом Английские.
Это получается на подобие  англо-русского переводчика.

Не могу понять как же так сделать что это все заработало=(

Мож я не тот интерфейс использую или что.

Помогите пжлста))))))
Записан
Fat-Zer
Гость
« Ответ #1 : Январь 20, 2011, 20:51 »

В самом тупом варианте грузите в QMap для английских ключей русский перевод и при изменение текста обновляете ListView(зачем здесь целый вид)... но полусится как на баше "понедельник - Monday, вторник tuesdaн, среда - environment".

А лучше распишите, что именно не получается...
Записан
GansNein
Гость
« Ответ #2 : Январь 20, 2011, 21:02 »

Ну дак помимо Русско - Английского еще нужно сделать второй вариант  программы. Запись Нотации Шахмат. К примеру e2-e4 это Алгибраическая запись   а нужно в Английскую она использует буквы QQNKM(к примеру).

Я просто не могу понять какие атрибуты и слоты при этом использовать.

и правельно ли я использую графический интерфейс.

мне сказали что можно с помощью построчной сортировки двух тхт файлов это реализовать но я просто пока не пойму как это сделать и вот  хожу по форумам  прошу помощи что бы хотя бы хоть как то намекнули как это можно реализовать=(
Записан
GansNein
Гость
« Ответ #3 : Январь 20, 2011, 21:23 »

А так же как связать что бы после ввода в TextEdit    результат ключей Qmap отображался  в ListView =)

 map["one"] = 1;
 map["three"] = 3;
 map["seven"] = 7;

Получается  когда я ввожу в TextEdit - One  в ListView  должно появится 1.
Вот я немного не могу понять как их так связать)
Записан
Fat-Zer
Гость
« Ответ #4 : Январь 20, 2011, 21:25 »

Ну дак помимо Русско - Английского еще нужно сделать второй вариант  программы. Запись Нотации Шахмат. К примеру e2-e4 это Алгибраическая запись   а нужно в Английскую она использует буквы QQNKM(к примеру).

Я просто не могу понять какие атрибуты и слоты при этом использовать.
Распишите нормально, что нужно сделать, а то к концу обсуждения выяснится, что вы интерфейс к драйверу кофеварки пишите, совмещённый с ИИ для шахмат...
Для разных задач используются разные решения, например шахматную нотацию скорей удобней парсить регэкспами..

и правельно ли я использую графический интерфейс.
А это уж вам точно ни кто не скажет без кода или хотя бы внятного рассказа о том, что вы делаете.

мне сказали что можно с помощью построчной сортировки двух тхт файлов это реализовать но я просто пока не пойму как это сделать и вот  хожу по форумам  прошу помощи что бы хотя бы хоть как то намекнули как это можно реализовать=(
Что вы (или тот, кто вам это сказал) подразумеваете под словами "построчная сортировка двух тхт файлов" я слабо представляю, ибо не вижу каким местом это сюда приложить.
Записан
GansNein
Гость
« Ответ #5 : Январь 20, 2011, 21:34 »

Нужно что бы программа   могла перевести из Алгебраической нотации шахмат(Классическая) в нотацию под  названием случайные шахматы Фишера(Английская).

пример перевода.

e2-e4 - Классическая
QQMNPK - Английская

Нужно что бы при вводе  в TextEdit  Классической записи  в ListView появился  перевод Классической в Английскую.
и наоборот.

Программа я так понимаю должна работать по принципу  Русско-Английского Английско-Русского переводчика ну принцып тот же.

Построчно это значит если в Едит записанно  слово к примеру Привет и оно стоит первое в строке в текстовом файле то программа берет слово так же  находящееся в первой строчки только уже второго текстового файла и запихивает его в ЛистВьюв)

Ну про этот способ особо ничего не знаю так как это был всего лишь совет мне =(
Записан
Fat-Zer
Гость
« Ответ #6 : Январь 20, 2011, 21:38 »

А так же как связать что бы после ввода в TextEdit    результат ключей Qmap отображался  в ListView =)

 map["one"] = 1;
 map["three"] = 3;
 map["seven"] = 7;

Получается  когда я ввожу в TextEdit - One  в ListView  должно появится 1.
Вот я немного не могу понять как их так связать)
В атаче пример на скорую руку с лайнэдитами...
Записан
Fat-Zer
Гость
« Ответ #7 : Январь 20, 2011, 21:53 »

Нужно что бы программа   могла перевести из Алгебраической нотации шахмат(Классическая) в нотацию под  названием случайные шахматы Фишера(Английская).

пример перевода.

e2-e4 - Классическая
QQMNPK - Английская

Нужно что бы при вводе  в TextEdit  Классической записи  в ListView появился  перевод Классической в Английскую.
и наоборот.
Должны быть правила перевода... из них и следует исходить... быстрый гугл ничего не дал кроме http://ru.wikipedia.org/wiki/Шахматы-960
Программа я так понимаю должна работать по принципу  Русско-Английского Английско-Русского переводчика ну принцып тот же.
если "по принципу словаря" то надо будет записать все возможные комбинации и переводы для них - звучит глупо... опять же проще записать правила перевода.
Записан
GansNein
Гость
« Ответ #8 : Январь 20, 2011, 22:20 »

На самом деле там их немного =) потому как коментарии  к нотации не учитываются а записываются только ходы)

ну хотя да если учесть  разницу в правилах записи то это будет долгий труд)

ну тогда такой вопрос как  сделать  ввиде кода правила перевода из одной в другую. и все таки как же мне привязать   EditText -> PushButtom -> ListView )
Записан
Fat-Zer
Гость
« Ответ #9 : Январь 20, 2011, 22:54 »

Только проще с ListWiget'ом работать, а не с ListView, для последнего нужно создавать модель... и читать про MVC.

ещё один пример в атаче
Записан
GansNein
Гость
« Ответ #10 : Январь 20, 2011, 23:23 »

благодорю за пример и за помощь)

буду разбиратся дальше)

принцип создания словарей  впринципе стал ясен по примерам разберусь)

Осталось понять как  сделать так что бы из словаря  при написании в текстэдит в виджетлисте  его другое значение  появлялось)
Записан
GansNein
Гость
« Ответ #11 : Январь 21, 2011, 00:12 »

аааа в процессе возник еще одна проблемма =(

РадиоБаттом  получается две кнопки  если включена первая то переводить программа должна с 1->2 а если вторая то 2->1 как это сделать в учете с Qmap =)
Записан
Fat-Zer
Гость
« Ответ #12 : Январь 21, 2011, 00:27 »

есть два топорных метода:
1) заводить второй словарь
2) через метод key искать ключ для значения
Записан
GansNein
Гость
« Ответ #13 : Январь 21, 2011, 08:05 »

а можно хотябы небольшой пример по использованию метода key)
Записан
GansNein
Гость
« Ответ #14 : Январь 21, 2011, 09:58 »

QObject::connect: Cannot connect (null)::clicked() to MainWindow::MyFunction()

когда начинаю собирать проект  вот это пишет проект собирается  но кнопка перевода не пашет что может быть?
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.129 секунд. Запросов: 21.