![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
breeve |
![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
я в qt дуб дубом.. Такой вопрос. вот взять например любой чат.. как называется такой виджет что-то вроде textedit только в который нельзя вводить.
Вообщем мне необходимо сделать программу в виде чата.. внизу вводишь нажимаешь ентер и выводиться сверху вот так: Цитата > Я ввел это предложение
|
|
|
![]() |
MoPDoBoPoT |
![]()
Сообщение
#2
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
Это называется QTextEdit (или QPlainTextEdit для простого текста) со свойством readOnly=true
![]() |
|
|
breeve |
![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
MoPDoBoPoT |
![]()
Сообщение
#4
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
Есть метод QTextEdit::setReadOnly(bool readOnly). Вся информация по классам описана в QtAssistant, там и всевозможные примеры есть. А вообще, лучше начать с книжки для новичка, типо "Макс Шлее - Qt 4.5. Профессиональное программирование на C++". Займет день-два, а пользы...
|
|
|
breeve |
![]()
Сообщение
#5
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Есть метод QTextEdit::setReadOnly(bool readOnly). Вся информация по классам описана в QtAssistant, там и всевозможные примеры есть. А вообще, лучше начать с книжки для новичка, типо "Макс Шлее - Qt 4.5. Профессиональное программирование на C++". Займет день-два, а пользы... чесно говоря у меня есть эта книга.. я многое там прочитал.. теоретически я знаю.. а написать что-то я не могу.. |
|
|
MoPDoBoPoT |
![]()
Сообщение
#6
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
Ну и Москва не сразу строилась. По чуть-чуть наполняй функционалом программу, и освоишься. Главное проникнуться основной идеей.
На начальном этапе еще не рекомендуется пользоваться визульной средой разработки (QtDesigner), чтобы "набить руки". |
|
|
breeve |
![]()
Сообщение
#7
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Ну и Москва не сразу строилась. По чуть-чуть наполняй функционалом программу, и освоишься. Главное проникнуться основной идеей. На начальном этапе еще не рекомендуется пользоваться визульной средой разработки (QtDesigner), чтобы "набить руки". а я ею не пользуюсь.. знаю что не рекомендуется.. просто какую книгу по кутэ не возьму.. читаю, пишу примеры, все понятно.. до поры до времени как написано что вот это мы опустим по скоку описывали уже ранее.. и все.. дальше начинается непонимание.. нету примеров нормальных.. там где по чуть чуть нарабатывают новый материал.. Ну и Москва не сразу строилась. По чуть-чуть наполняй функционалом программу, и освоишься. Главное проникнуться основной идеей. На начальном этапе еще не рекомендуется пользоваться визульной средой разработки (QtDesigner), чтобы "набить руки". а я ею не пользуюсь.. знаю что не рекомендуется.. просто какую книгу по кутэ не возьму.. читаю, пишу примеры, все понятно.. до поры до времени как написано что вот это мы опустим по скоку описывали уже ранее.. и все.. дальше начинается непонимание.. нету примеров нормальных.. там где по чуть чуть нарабатывают новый материал.. вот нашел примерчик.. прям что надо.. два текстедита разделенных splitter'ом.. вот а как сделать так чтобы вниз писал вверх выводил.. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#8
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
breeve, два учебных пособия на русском языке - тыц
|
|
|
breeve |
![]()
Сообщение
#9
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
breeve, два учебных пособия на русском языке - тыц Спасибо конечно.. но я их делал) Вопрос конечно понимаю тупой.. вот код: Раскрывающийся текст
Как сделать так чтобы я писал в ptxt2 нажимал ентер а он выводил сверху? |
|
|
MoPDoBoPoT |
![]()
Сообщение
#10
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
вот а как сделать так чтобы вниз писал вверх выводил.. Я сам не особый знаток, но мне кажется, что надо работать с объектом документом имеющегося текстэдита. Методом QTextEdit::document() получаем указатель на документ, а дальше добавляем ему в начало необходимый текс. Например:
Возможно есть более шустрый код, я с QTextDocument и прочим не разбирался. Сообщение отредактировал MoPDoBoPoT - 26.12.2009, 23:21 |
|
|
Litkevich Yuriy |
![]()
Сообщение
#11
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
MoPDoBoPoT |
![]()
Сообщение
#12
|
Участник ![]() ![]() Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо конечно.. но я их делал) Хех. Делал - это как? Собрал проект, потыркался в проге и все? ![]() Как сделать так чтобы я писал в ptxt2 нажимал ентер а он выводил сверху? Без наследования никак. Разберись с сигнал-слотами. В книге у Шлее есть на эту тему простенький пример "Counter". |
|
|
Litkevich Yuriy |
![]()
Сообщение
#13
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
тебе нужно создать класс-окно. Т.е. делаешь наследника от QWidget, в него помещаешь почти всё содержимое main.
У QTextEdit есть сигнал textChanged() и есть слоты: selectAll() cut () paste () идея такая: соеденяешь сигнал textChanged() QTextEdit'а нижнего со слотом своего окна (надо его создать) В слоте делаешь последовательно для этого QTextEdit'а textedit1->selectAll() textedit1->cut () и вставляешь во второй: textedit2->paste () |
|
|
breeve |
![]()
Сообщение
#14
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
ну допустим как вывести это я более или менее понял посмотрел про qtextdoc в ассистенте..
Как забиндить ентер.. и как мне считать с textedit'а вот допустим setPlainText как я понял вставляет туда текст.. А есть ли getPlainText))? ну допустим как вывести это я более или менее понял посмотрел про qtextdoc в ассистенте.. Как забиндить ентер.. и как мне считать с textedit'а вот допустим setPlainText как я понял вставляет туда текст.. А есть ли getPlainText))? Чет не заметил я вторую страничку.. |
|
|
breeve |
![]()
Сообщение
#15
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
тебе нужно создать класс-окно. Т.е. делаешь наследника от QWidget, в него помещаешь почти всё содержимое main. У QTextEdit есть сигнал textChanged() и есть слоты: selectAll() cut () paste () идея такая: соеденяешь сигнал textChanged() QTextEdit'а нижнего со слотом своего окна (надо его создать) В слоте делаешь последовательно для этого QTextEdit'а textedit1->selectAll() textedit1->cut () и вставляешь во второй: textedit2->paste () Алгоритм я понял.. вот сделал как сказали.. Переделал все под класс.. только что мне писать в объявлении TextChanged(), selectAll(), cut(), и paste()? |
|
|
breeve |
![]()
Сообщение
#16
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Насчет TextChanged(), .. как я понял они стандартные.. и объявлять их не нужно.. Я тут нашел в книге про textEdit правда мало очень..
такой вопрос как забиндить клавишу? Вот этот textChanged() высылается при изменении текста.. если я сделаю в точности как сказал Litkevich Yuriy, у меня будет так: я печатаю букву "у" - текст изменился, он его весь выделил, вставил вверх.. печатаю след букву "м" происходит тоже самое.. и получается как зеркало что здесь то и там.. Если я конечно правильно понял.. Но мне надо не так.. мне надо чтобы я напечатал, нажал, он как приплюсовал к строке то что я тока что ввел.. т.е было: > Привет. // я ввел "Хай!" и нажал ентер и получилось > Привет. > Хай! |
|
|
breeve |
![]()
Сообщение
#17
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
вот решил пока не заморачиваться насчет ентера сделать кнопку. вот код
main.cpp
button.cpp
button.h
Ввожу что-нибудь нажимаю на кнопку.. он виснет) |
|
|
Litkevich Yuriy |
![]()
Сообщение
#18
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
зря ты класс назвал "кнопкой", ведь на кнопке нет полей ввода и т.д.
|
|
|
breeve |
![]()
Сообщение
#19
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#20
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
для отладки в слот вставь qDebug(), например:
в pro-файл, добавь:CONFIG += console тогда в консоль, при отладочной сборке будут печататься эти строчки, так ты сможешь локализовать проблему. А какая разница как он назван? он же не является кнопкой то по сути... существенная, когда читаешь чужой код, а его милион строк может быть, то ориентируешся на имена. Я смотрю main.cpp, и не понимаю, а где у breeve окно, кнопку вижу, а дальше?
|
|
|
breeve |
![]()
Сообщение
#21
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
вставил как вы сказали получилось вот так:
Раскрывающийся текст
Теперь он у меня просто выходит по нажатию кнопки и все. А консоль просмотреть где можно? Пишу на Креаторе.. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#22
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
breeve |
![]()
Сообщение
#23
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Снизу есть окошко называется Application Output:
Цитата Starting /home/breeze/.qtProjects/button_two/button_two... mySlot The program has unexpectedly finished. /home/breeze/.qtProjects/button_two/button_two exited with code 0 Вот что там выводится |
|
|
BRE |
![]()
Сообщение
#24
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Измени конструктор:
Раскрывающийся текст
и все заработает. ![]() |
|
|
Litkevich Yuriy |
![]()
Сообщение
#25
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
breeve |
![]()
Сообщение
#26
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
да все заработало.. Но есть одно неудобство.. он вставляет не в верхнее окно, а в нижнее..
т.е пишу ляля, нажимаю add и снизу получается: ляляляля )) нене.. гоню.. он вставляет не то что я туда ввел а то что сейчас у меня в буфере обмена.. Ооо.. Всем спасибо.. я поменял название textEdit'ов и все заработало)) |
|
|
Litkevich Yuriy |
![]()
Сообщение
#27
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
breeve |
![]()
Сообщение
#28
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
а то что сейчас у меня в буфере обмена.. угу.Я привёл простейший способ. Теперь тебе нужно усовершенствовать код. Брать текст явно из QTextEdit'а, и явно его помещать в другой. breeve, ты понял суть ошибки в конструкторе? Понял, я создавал текстЕдит как новый не тот что я объявлял в хидере.. Ага а усовершенствовать это да.. Мне бы еще узнать как биндить клавишу ентер и все будет отлично) |
|
|
Litkevich Yuriy |
![]()
Сообщение
#29
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Мне бы еще узнать как биндить клавишу ентер и все будет отлично) оставь её на потом. А сейчас займись, тем, без чего чат не чат. Т.е. корректным отображением текста в журнальном поле (верхнем), чтобы там и символ ">" был и копирование было без буфера обмена.По поводу перехвата клавиши "Enter" - это отдельная тема, она достаточно независима. Мало того тема такая поднималась. |
|
|
breeve |
![]()
Сообщение
#30
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Только еще я не очень понимаю как явно передать из одного другому не через буфер..
Т.е как я думаю, это значит присвоить какой-нибудь строке содержимое первого текст едита.. потом во втором просто вывести эту строку) можно ли сделать так: QString str=ptxt1 -> text(); ptxt2 ->insertPlainText(str); |
|
|
BRE |
![]()
Сообщение
#31
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Посмотри на void QTextEdit::append ( const QString & text ) [slot]
|
|
|
breeve |
![]()
Сообщение
#32
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Отлично все сделал!!
вот так:
|
|
|
BRE |
![]()
Сообщение
#33
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Для чего делать три вызова метода, если достаточно одного:
|
|
|
breeve |
![]()
Сообщение
#34
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
У меня назрел еще вопрос можно ли использовать стандартные директивы сишные.. например string.. или обязательно надо использовать их Qt'ешные аналоги?
Вот мне необходимо использовать функцию вхождения строки А в строку Б.. В стандартной директиве я знаю какую функцию мне использовать.. А здесь нет.. |
|
|
BRE |
![]()
Сообщение
#35
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
У меня назрел еще вопрос можно ли использовать стандартные директивы сишные.. например string.. или обязательно надо использовать их Qt'ешные аналоги? Вот мне необходимо использовать функцию вхождения строки А в строку Б.. В стандартной директиве я знаю какую функцию мне использовать.. А здесь нет.. Почитай про класс QString. Там функционала с избытком. ![]() |
|
|
breeve |
![]()
Сообщение
#36
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
вот нашел функцию QString::contains()
и она мне всегда говорит 0. Не понимаю вот код:
|
|
|
BRE |
![]()
Сообщение
#37
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
вот нашел функцию QString::contains() и она мне всегда говорит 0. if(str.contains("Привет")==1) Все правильно, почитай в assistant про то, как в Qt хранятся строки, про QTextCodec и локализацию. С этим нужно разобраться сразу и тогда масса вопросов отпадет сама собой. ![]() |
|
|
breeve |
![]()
Сообщение
#38
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Я даже понял в чем проблема, только не знаю как решить ее
Когда я ввожу с клавиатуры.. там видимо кодировка другая и поэтому он не определяет.. с цифрами и с латинским алфавитом работает а вот с русским((( Как мне переделать строку под определенную кодировку ? не успеваю задать вопрос уже ответ написали)) |
|
|
Litkevich Yuriy |
![]()
Сообщение
#39
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Как мне переделать строку под определенную кодировку ? надо строковые константы перевести в QString, в функции main: вместо UTF-8 укажи кодировку, в которой сам исходник пишется.Далее в коде оборачивай строковые константы в функцию tr:
|
|
|
breeve |
![]()
Сообщение
#40
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
Как мне переделать строку под определенную кодировку ? надо строковые константы перевести в QString, в функции main: вместо UTF-8 укажи кодировку, в которой сам исходник пишется.Далее в коде оборачивай строковые константы в функцию tr:
вот эта функция tr() она принимает на значение const char*, так? а мне же надо перевести QString в другую кодировку.. А ты мне пишешь "Надо строковые константы перевести в QString".. помоему как раз таки наоборот.. QString в const char.. Я видимо не так понял)) Подставил tr под "привет" и все заработало)) Спасибо |
|
|
Litkevich Yuriy |
![]()
Сообщение
#41
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
просто константа "Привет" будет превращена в QString, с его внутренним представлением, из кодировки которую ты указваешь глобально в main'е.
А дальше при сравнении двух QString, сравниваться уже будут строки в одной и тоже внутренней кодировке Qt (UTF-16) |
|
|
breeve |
![]()
Сообщение
#42
|
Участник ![]() ![]() Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
просто константа "Привет" будет превращена в QString, с его внутренним представлением, из кодировки которую ты указваешь глобально в main'е. А дальше при сравнении двух QString, сравниваться уже будут строки в одной и тоже внутренней кодировке Qt (UTF-16) Да это конечно все хорошо.. все понятно, все работает.. Я на самом деле думал что будет не одна строка "Привет" а допустим массив QString где много разных привет и допустим если введенное слово совпадает со словом из одного массива то пишет одно, из другого другое.. Так вот а tr() не хочет принимать QString на параметр.. пишет ошибку А насчет Ентера нашел тут вот тему прошлогоднюю и там был код я его малец переделал:
Вставил он работает.. только мне нужно чтобы не комбинацию считывал, а одну кнопку.. я пытался убрать альт и оставить только ентер вот так: (Qt::Key_Return) он у меня так не работает.. Искал в документацию как забиндить одну кнопку что-то так и не нашел( Сообщение отредактировал breeve - 27.12.2009, 19:47 |
|
|
Litkevich Yuriy |
![]()
Сообщение
#43
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
ак вот а tr() не хочет принимать QString на параметр.. пишет ошибку а зачем ему принимать QString, он тебе QString'ов делает, их и используй.Вставил он работает.. только мне нужно чтобы не комбинацию считывал, а одну кнопку.. я пытался убрать альт и оставить только ентер вот так: (Qt::Key_Return) посмотри тему: перемещение курсора в QTextEdit, там есть обработка события нажатия клавиши "Enter". Если будет не достаточно создай новую, уточняющую тему, или наоборот более общую.
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 15.7.2025, 18:06 |