![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Artemij |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 25.1.2007 Где: Ireland Репутация: нет Всего: нет |
Привет!
Насколько реально реализовать программу на Java, которая собирает информацию и автоматически заполняет соответствующие поля в сторонней программе? Некий простой интерфейс с подсказками поверх более сложного. Сторонняя программа не имеет API. Примерный алгоритм: 1) Пользователь заполняет все поля в простом интерфейсе. 2) Информация записывается в TXT файл и одновременно копируется в Windows буфер. 3) Информация из буфера копируется в соответствующие поля в сторонней программе. Желательно свести к минимуму участие пользователя в данном процессе, естественно кроме заполнения полей информацией. Подскажите примерно план реализации? СПАСИБО! |
|||
|
||||
Orange |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 6.9.2004 Где: Russia, Moscow Репутация: 4 Всего: 5 |
Я так понимаю сторонняя программа написана не на Java?
Что ей мешает читать информацию из файла? Это сообщение отредактировал(а) Orange - 25.7.2008, 12:18 --------------------
Пару дней назад я познакомился с мальчиком...... |
|||
|
||||
Artemij |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 25.1.2007 Где: Ireland Репутация: нет Всего: нет |
Да, сторонняя программа написана не на Java, не имеет API и не читает информацию из файлов. Более того является клиентом, который собирает информацию и отправляет её на сервер в БД. Речь идёт о Windows Only. Например, Skype. Допустим мне не нравиться интерфейс ввода сообщения, и я хочу написать свой на Java. |
|||
|
||||
Orange |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 6.9.2004 Где: Russia, Moscow Репутация: 4 Всего: 5 |
Хм, даже не знаю что тут предложить.
Конкретно по вопросам: 2) Информация записывается в TXT файл и одновременно копируется в Windows буфер.
3) Информация из буфера копируется в соответствующие поля в сторонней программе. JNI --------------------
Пару дней назад я познакомился с мальчиком...... |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Программа, которая самостоятельно гадит буфер обмена должна быть уничтожена. За такие программы увольнять надо сразу ![]() Я не шучу - это крайне неудачное решение. Может лучше тогда посылать Windows-сообщения нужным контролам в окошке программы ? |
|||
|
||||
Orange |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 6.9.2004 Где: Russia, Moscow Репутация: 4 Всего: 5 |
А можно поподробнее об этом? Что тут такого сильно криминального? --------------------
Пару дней назад я познакомился с мальчиком...... |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Пользователь запомнил какие-то данные в буфере обмена - надо ему было. Потом решил запустить такую славную программу, нажал на кнопочку. У него все хорошо. А теперь он хочет вставить свои данные (которые, как он наивно полагает, все еще в буфере) - и получает полную фигню. Думаешь кто-то захочет пользоваться такой программой ? Это крайне неудобный и неюзабельный подход. Я еще лет 15 назад в этом убедился - пользователь просто в шоке бывает. |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
Думаю что если программа делает копирование не в тихоря, на например по нажатию кнопки пользователем, то решение нормальное. Так же как и Ctrl+C нажать.
Т.е. заполнил поля нажал на кнопку, данные в буфер ушли, переключился на другую прогу, вставил данные из буфера. Все довольны, все под контролем пользователя. Или я что то упустил? ![]() |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Ну разве что под контролем пользователя. Хотя я не люблю такое.
|
|||
|
||||
w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 20 Всего: 54 |
СтОит делать именно так ![]() -------------------- ![]() ![]() |
|||
|
||||
Artemij |
|
||||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 25.1.2007 Где: Ireland Репутация: нет Всего: нет |
Спасибо за конкретное предложение! |
||||
|
|||||
Artemij |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 25.1.2007 Где: Ireland Репутация: нет Всего: нет |
А можно подробнее? Примерный сценарий Java программы: 1) Пользователь заполняет все данные в простом интерфейсе ( Java программа ). 2) Данные проверяются, и, если нет ошибок, записываются в TXT файл и копируются в буфер. 3) Пользователь переключается ( открывает окно ) в стороннюю программу и нажимает Ctrl - V, например. 4) Информация из буфера ( или из TXT файла ) копируется в соответствующие поля сторонней программы. Все рады. Для меня сейчас самый БОЛЬШОЙ вопрос, как получить контроль над интерфейсом сторонней программы из вне (из Java программы)? Подскажите подробней как называется Java framework/package и где можно почитать на тему. Почитал о JNI. Не очень понял,то ли это что мне надо или нет. ![]() Ведь всё сходить к переключению между input field с помощью tab/enter/up/down/left/right. Тоесть полная имитация навигации по стороннему приложению пользователем. Это сообщение отредактировал(а) Artemij - 25.7.2008, 23:32 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |