crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QLocale
Dimix
  опции профиля:
сообщение 21.1.2011, 8:46
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 74
Регистрация: 24.11.2010
Пользователь №: 2215

Спасибо сказали: 0 раз(а)




Репутация:   0  


AddComingEditSum = new QLineEdit;
AddComingEditSum->setFixedWidth(70);
AddComingEditSum->setText("0");

connect(AddComingEditSum, SIGNAL(textChanged(QString)), this, SLOT(localeComing()));
void MainWindow::localeComing()
{
    QLocale ukrLocale(QLocale::Ukrainian, QLocale::Ukraine);
    double sum = ukrLocale.toDouble(AddComingEditSum->text());
    AddComingEditSum->setText(ukrLocale.toString(sum));
}
Помогите проблема в количестве цыфр. По данному коду больше 4 цыфр нельзя ввести. Что не так?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
igor_bogomolov
  опции профиля:
сообщение 21.1.2011, 12:38
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата
Я Вас правильно понял. Нужно вот так?
void localeComing(const QString locStr);
void localeComing(const QString &locStr);

Цитата
А что делает QLineEdit::setLocale();?
нет такого метода

Dimix, да вы в первый раз почти всё правильно делали. Просто перед toDouble(AddComingEditSum->text()); выкиньте лишние пробелы из строки и всё должно заработать
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 21.12.2024, 7:56