Перейти к содержимому

Фотография

Ввод текста


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 15

#1 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 16 декабря 2008 - 13:30

Добрый день коллеги.
Нуждаюсь в вашей помощи вот в каком вопросе.
При вводе текста в соответствующее поле, текст вводится обрывками...(как бы точнее объяснить. К примеру водится первое слово и за ним должно следовать второе, но первое стирается и второе пишется вместо первого). И это не постоянно. Иногда все работает отлично. От чего может такое случаться? Может как то можно замедлить ввод текста?

VBscript.
  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#2 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 16 декабря 2008 - 13:51

Добрый день коллеги.
Нуждаюсь в вашей помощи вот в каком вопросе.
При вводе текста в соответствующее поле, текст вводится обрывками...(как бы точнее объяснить. К примеру водится первое слово и за ним должно следовать второе, но первое стирается и второе пишется вместо первого). И это не постоянно. Иногда все работает отлично. От чего может такое случаться? Может как то можно замедлить ввод текста?

VBscript.

А как вы ввод делаете? Вы присваиваете значение свойству wText или аналогичному, отвечающему за содержимое текстового поля, или же посылаете сигналы нажатия клавиш типа вызова метода Keys? В первом случае при вводе второго слова старое содержимое просто затирается. Тут нужно просто извлечь уже существующее содержимое, добавить к извлеченной строке добавляемую фразу и записать в свойство снова. А во втором случае надо удостовериться, что курсор перемещен в конец строки. Тогда проблем с затиранием не будет
  • 0

#3 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 17 декабря 2008 - 04:35

Здравствуйте.

Если вы используете метод Keys, то обратите внимание на это замечание в хелпе ТС:

If you use a computer that has several processors or a multiple-core processor (for example, dual-core CPU) and has Windows XP Service Pack 2, then you must install the Windows update #896256 in order for TestComplete to be able to record user actions correctly. The update is available on Microsoft’s web site:
http://support.microsoft.com/kb/896256

Попробуйте поставить этот апдейт.
  • 0
С уважением,
Дмитрий

#4 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 17 декабря 2008 - 07:46

Добрый день коллеги.
Нуждаюсь в вашей помощи вот в каком вопросе.
При вводе текста в соответствующее поле, текст вводится обрывками...(как бы точнее объяснить. К примеру водится первое слово и за ним должно следовать второе, но первое стирается и второе пишется вместо первого). И это не постоянно. Иногда все работает отлично. От чего может такое случаться? Может как то можно замедлить ввод текста?

VBscript.

А как вы ввод делаете? Вы присваиваете значение свойству wText или аналогичному, отвечающему за содержимое текстового поля, или же посылаете сигналы нажатия клавиш типа вызова метода Keys? В первом случае при вводе второго слова старое содержимое просто затирается. Тут нужно просто извлечь уже существующее содержимое, добавить к извлеченной строке добавляемую фразу и записать в свойство снова. А во втором случае надо удостовериться, что курсор перемещен в конец строки. Тогда проблем с затиранием не будет


Ввожу с помощью метода Keys.

Call w1.Keys("TQSDW1U-AU9YDD6-T2F9UKK-A2G5HQ")

  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#5 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 17 декабря 2008 - 07:48

Здравствуйте.

Если вы используете метод Keys, то обратите внимание на это замечание в хелпе ТС:

If you use a computer that has several processors or a multiple-core processor (for example, dual-core CPU) and has Windows XP Service Pack 2, then you must install the Windows update #896256 in order for TestComplete to be able to record user actions correctly. The update is available on Microsoft’s web site:
http://support.microsoft.com/kb/896256

Попробуйте поставить этот апдейт.



У меня стоит Windows XP SP3. И процессор AMD Athlon XP 1700+
Нужно ли ставить этот апдэйт под мой проц? Он же не многоядерный :blush:
  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#6 Genka

Genka

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

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 17 декабря 2008 - 09:06

Вот еще пара идей для обдумывания.

1) Если вы используете нестандартную клавиатуру (например, с кучей дополнительных кнопок) со специфическим драйвером, - попробуйте этот самый драйвер отключить. В частности, я сталкивался с ситуацией, когда метод SendKeys объекта Wscript.Shell не вводил некоторые символы именно из-за работающего драйвера клавиатуры.

2)

К примеру водится первое слово и за ним должно следовать второе, но первое стирается и второе пишется вместо первого). И это не постоянно.


Эти симптомы вообще больше похожи на то, что в приложении стоит какой-то обработчик события ввода данных с клавиатуры. Проверьте, может быть эта ситуация наблюдается для каких-то специфических полей? И попробуйте воспроизвести эту же проблему с каким-то стандартным приложением (скажем, в блокноте в диалоге Page Setup, там много разных полей).
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#7 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 17 декабря 2008 - 12:13

Приветствую.

Ну, и как альтернативное решение, не проливающее, правда, свет на причину проблемы, вы можете просто присваивать нужным полям текст через свойство wText.
  • 0
С уважением,
Дмитрий

#8 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 17 декабря 2008 - 14:08

Ввожу с помощью метода Keys.

Call w1.Keys("TQSDW1U-AU9YDD6-T2F9UKK-A2G5HQ")

А может проблема в том, что поле на самом деле не одно, а 4 разных для каждого сегмента. Ну как при вводе серийника. Там 4-5 полей и для каждого сегмента отдельное поле. И если это поле переполняется, то старый контент может затереться или просто не вводиться дальше. Может там в каждое поле нужно вводить текст индивидуально.

Опять же, а вручную если набрать вышеприведенный серийник (уж очень на него похоже ), полностью эту последовательность символов, то текст введется корректно?
  • 0

#9 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 18 декабря 2008 - 08:24

Приветствую.

Ну, и как альтернативное решение, не проливающее, правда, свет на причину проблемы, вы можете просто присваивать нужным полям текст через свойство wText.

У этого объекта нету такого свойства wText. Но текст туда вводить можно.

Ввожу с помощью метода Keys.

Call w1.Keys("TQSDW1U-AU9YDD6-T2F9UKK-A2G5HQ")

А может проблема в том, что поле на самом деле не одно, а 4 разных для каждого сегмента. Ну как при вводе серийника. Там 4-5 полей и для каждого сегмента отдельное поле. И если это поле переполняется, то старый контент может затереться или просто не вводиться дальше. Может там в каждое поле нужно вводить текст индивидуально.

Опять же, а вручную если набрать вышеприведенный серийник (уж очень на него похоже ), полностью эту последовательность символов, то текст введется корректно?

Поле для ввода текста одно. Не разделено.
  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#10 Mamonteshka

Mamonteshka

    Новый участник

  • Members
  • Pip
  • 25 сообщений
  • ФИО:Едемский Михаил
  • Город:Киев

Отправлено 18 декабря 2008 - 09:18

Если принципиально вводить текст именно с клавиатуры методом Keys, то может быть поможет работа через буфер -
Sys.Clipboard = sValue
Obj.Keys("^v")

  • 0
В мОей ГоЛове нEт таРАканоВ! Их даВНо СожРали куДа боЛЕе кРупнЫе и опАсНые твАри...

#11 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 18 декабря 2008 - 09:37

Здравствуйте.

А вы пробовали воспроизводить проблему с другим полем ввода (например с блокнотом или другим полем в вашем приложении)? Эта информация позволит узнать специфично ли это странное поведение для конкретного поля ввода.
  • 0
С уважением,
Дмитрий

#12 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 18 декабря 2008 - 11:19

Если принципиально вводить текст именно с клавиатуры методом Keys, то может быть поможет работа через буфер -

Sys.Clipboard = sValue
Obj.Keys("^v")

Я не работал с буфером обмена. Не подскажете как поместить текст в буфер и потом от туда его вставить в поле ввода для этого текста?

Здравствуйте.

А вы пробовали воспроизводить проблему с другим полем ввода (например с блокнотом или другим полем в вашем приложении)? Эта информация позволит узнать специфично ли это странное поведение для конкретного поля ввода.

Попробовал сделать тоже самое в блокноте. Все вводится нормально
  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#13 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 18 декабря 2008 - 11:53

Приветствую.

Если принципиально вводить текст именно с клавиатуры методом Keys, то может быть поможет работа через буфер -

Sys.Clipboard = sValue
Obj.Keys("^v")

Я не работал с буфером обмена. Не подскажете как поместить текст в буфер и потом от туда его вставить в поле ввода для этого текста?

Sys.Clipboard = sValue
Obj.Keys("^v")
:)

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

А в других полях тестируемого приложения? Спросите у разработчиков, есть ли какие-нибудь обработчики нажатий клавиш у проблемного контрола.
  • 0
С уважением,
Дмитрий

#14 Alcozaicer

Alcozaicer

    Новый участник

  • Members
  • Pip
  • 27 сообщений
  • ФИО:Пухов Денис
  • Город:Москва

Отправлено 18 декабря 2008 - 12:51

Если принципиально вводить текст именно с клавиатуры методом Keys, то может быть поможет работа через буфер -

Sys.Clipboard = sValue
Obj.Keys("^v")

Все разобрался))) это и было решением проблемы. Вставка текста из буфера.
А текст сокращался при написании, потому что внешне поле для ввода текста меньше чем сам текст и он его автоматически обрезал, но текст полностью может в себя вмещать.
  • 0
«Счастлив, кто падает вниз головой
Мир для него, хоть на миг, - а иной»



ХОДАСЕВИЧ В


#15 julia.ap

julia.ap

    Новый участник

  • Members
  • Pip
  • 23 сообщений

Отправлено 16 января 2009 - 07:03

У мня похожая проблема (Win XP, SP3). Только у меня с текстбоксами все нормально, текст не обрезают. Но иногда когда ввожу текст, некоторые буквы почему-то не вводятся (тоже с помощью Keys). Т.е. в двух случаев из пяти при вводе текста может не ввести какую-нибудь букву - первую, из середины, любую в общем.
Поможет ли мне обновление микрософта, ведьу меня 3ий сервис-пак? Переделывать на копи клипбоард не хотелось бы, такая масса тестов уже написана...
  • 0

#16 Dmitry N

Dmitry N

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

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 16 января 2009 - 11:47

Здравствуйте.

Вам, наверное, установка патча не поможет, так как он уже должен быть включен в SP3. Ситуация, похоже, сложная. Попробуйте обратиться в Посетить мою домашнюю страницуслужбу поддержки.
  • 0
С уважением,
Дмитрий


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных