Просмотр сообщений
|
Страниц: [1] 2 3 ... 43
|
1
|
Программирование / Алгоритмы / Spell checker (проверка орфографии)
|
: Июнь 11, 2018, 21:03
|
Привет всем, такая задача. Есть текст с неправильными словами, которые надо исправить согласно словам в словаре. Причём: - для изменения слова допускается только 2 операции: вставка и/или удаление символа; - если это две вставки или два удаления, то эти два символа не должны находиться рядом; Если под исправление подходит несколько слов из словаря, то отобразить их в тексте внутри фигурных скобок.
Пример.
Словарь: rain the his main mainly plain
Текст: hte mainy lain
В результате должно быть: the {main mainly} plain
Сначала думал, что достаточно будет использовать алгоритм дистанции Левенштейна. Например, если сравнивать "hte" с "the", то он выдаст длину 2, для "his" тоже. И для самого алгоритма это правильно (т.к. работает заменами), но по заданию подойдёт только "the", т.к. два действия: сначала удаление в начале слова символа "h" и потом добавление "h" между "t" и "e". "his" не подойдёт, т.к. для приведения слова "hte" к "his" действий (именно удалений-вставок, а не замен) будет больше. Может кто сталкивался уже?
|
|
|
2
|
Qt / QSS / qtableview item last css
|
: Июль 27, 2016, 16:00
|
Привет всем! Интересует, может кто в курсе, как задать стиль для посленего элемента в QTableView? Такой вариант не работает: CSS QTableView::item:last { border-left: 1px solid red; }
А хотелось бы найти рабочий:), спасибо.
|
|
|
5
|
Qt / Qt Embedded / Qt 5.6.0, android и webkit
|
: Сентябрь 18, 2015, 17:22
|
Привет всем! Не могу разобраться как собрать Qt 5.6.0 из исходников с правильной поддержкой Android. Из исходников - потому что нужна поддержка webkit, а без него всё и так работает из-под коробки. Делал этим способом. Команда конфигурации: ./configure -android-arch armeabi -xplatform android-g++ -nomake tests -nom ake examples -android-ndk /home/<user>/Work/android-ndk-r10e -android-sdk /home/<user>/Work/Android/Sdk -android-ndk-host linux-x86 -android-toolchain-version 4.8 -skip qttranslations -skip qtserial port -skip qtwebkit-examples -no-warnings-are-errors Т.е. без "-skip qtwebkit", как это было бы по умолчанию. И всё бы хорошо, но Qt Creator в настройках проекта показывает разные настройки если использовать Qt "из-под коробки" и собранный. На собранной версии, как видно по скрине, отсутствуют несколько настроек вроде "Build android APK" и т.п. Нормальная версия: Собранная: Думаю из-за того, что в нормальной версии ABI компилятора отличается от той, что у собранной. В нормальной версии: В собранной: Т.е. в собранной она почему-то "arm-linux-generic-elf-32bit". Добавил компилятор и указал ему необходмый ABI: Но в собранной версии этот компилятор не подцепился. Может я забыл что-то дополнительно указать при конфигурировании перед сборкой? А вообще, WebKit нужен для того. чтобы отображать интерфейс написанный на html/js. Думал уже про вариант использования нативного для андроида java webkit, но тогда могли бы быть проблемы с взаимодействием c++ -> java -> js и наоборот, ведь, например, на форме будут html-кнопки, а события нужно будет отрабатывать на стороне c++, как это позволяет QWebView.
|
|
|
8
|
Qt / Пользовательский интерфейс (GUI) / QTreeWidget, selection, setForeground
|
: Март 07, 2014, 16:19
|
Привет всем, задал для QTreeWidget стиль: CSS QTreeView::item { selection-background-color: #cfffcb; selection-color: grey; }
Но после этого применяю: C++ (Qt) QTreeWidgetItem* item = treeWidget->topLevelItem(0); item->setForeground(0, QBrush(QColor("#2881bb")));
То есть у выделенной строки пытаюсь изменить цвет текста первого столбца, но он, почему-то не меняется. Если строка не выделенная, то всё ок. Может будут какие-нибудь советы? Замаялся уже
|
|
|
10
|
Программирование / Общий / Re: QDoubleSpinBox, double, int
|
: Июль 15, 2013, 13:11
|
Попробуйте, вместо qDebuga std::cerr: C++ (Qt) void struct1:moneyChangedSlot(double money) { boost::int64_t action_money = static_cast<boost::int64_t>(money * 100); std::cerr << "money: " << std::setprecision(8) << money << "; action_money: " << action_money; } Для std::setprecision нужно будет <iomanip> подключить.. Так тоже нет. Но получилось так: C++ (Qt) void struct1:moneyChangedSlot(double money) { boost::int64_t action_money = qRound(money * 100); //... }
По всей видимости, double в слоте не 5.01 (как пример), а 5.0099999999999 или типа того. Ну и std::cout выводит это дело по-своему.
|
|
|
11
|
Программирование / Общий / Re: QDoubleSpinBox, double, int
|
: Июль 15, 2013, 12:02
|
Теневая экономика)
Я давно понял, что при юзании денег лучше использовать int (то есть все деньги - только центы), проблем с этим совершенно никаких. Только при отображении под рукой иметь транслятор для деления на 100=). С даблами была полная жопа. Но тут мне надо чтобы юзер выбрал деньги с помощью QDoubleSpinBox'а, а в слоте такая вот хрень происходит.
|
|
|
12
|
Программирование / Общий / [SOLVED] QDoubleSpinBox, double, int
|
: Июль 15, 2013, 11:54
|
В слоте для сигнала valueChanged(), который у QDoubleSpinBox'а, имею: C++ (Qt) void struct1:moneyChangedSlot(double money) { boost::int64_t action_money = static_cast<boost::int64_t>(money * 100); qDebug() << "money: " << money << "; action_money: " << action_money; }
output: money: 5.05 ; action_money: 504 Почему, если money равен 5.05, то action_money равен 504, а не 505? Это как пример. На самом деле поведение какое-то хаотичное. Например, при том же money == 5.03 всё ок. Спасибо.
|
|
|
13
|
Qt / Общие вопросы / Re: QList в качестве буфера
|
: Июнь 28, 2013, 13:32
|
Какой метод лучше?
В данном случае (QList) все равно. Даже при использовании второго варианта, QList будет хранить указатели, а не сами объекты. а может всё-таки копии объектов?
|
|
|
14
|
Программирование / Общий / Идентификация компа
|
: Июнь 03, 2013, 14:03
|
Понимаю, что таких тем в сети достаточно, но что делать - так и не решил. Надо как-то идентифицировать комп для того, чтобы отключать клиентку от сервера на случай "спама" с этого компа. Вариант взятия ID'ов материнки/винта не подходит ввиду того, что не все железки его выдают или могут выдавать пустыми. MAC сетевухи тоже не подходит, т.к. его можно менять. Может быть всё-таки есть ещё какой-нить вариант?
|
|
|
|
|