Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Файловая система
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.02.2015, 13:51
Radamant Radamant вне форума
Прохожий
 
Регистрация: 06.02.2015
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Работа с Блокнотом

Delphi 7. Операционная система Windows 7. Запущен Блокнот и свернут. Имеется в буфер обмене текст. Надо создать программу с одной кнопкой. Когда нажимаем на кнопку, программа должна найти свернутый Блокнот, программно нажать на второй пункт в Меню в Блокноте ("Правка"), потом во втором пункте нажать на четвертый пункт("Вставить"). Вот и всё.
Заранее спасибо.
Ответить с цитированием
  #2  
Старый 06.02.2015, 15:18
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Я бы попробовал через FindОкноуEx, WM_COPY, WM_PASTE. Без меню, вообщем.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #3  
Старый 06.02.2015, 15:37
Radamant Radamant вне форума
Прохожий
 
Регистрация: 06.02.2015
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

[quote=NumLock]Я бы попробовал через FindОкноуEx, WM_COPY, WM_PASTE. Без меню, вообщем.[/QUOTЕ]
Тогда я бы не писал столько вещей.
Ответить с цитированием
  #4  
Старый 06.02.2015, 15:58
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Сделал через 3 функции: FindWindow, FindWindowEx, SendMessage. Текст из буфера обмена вставляется в Блокнот.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #5  
Старый 06.02.2015, 16:20
Radamant Radamant вне форума
Прохожий
 
Регистрация: 06.02.2015
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Напишите исходник. И пусть прога делает, то что я написал пожалуйста...
Ответить с цитированием
  #6  
Старый 06.02.2015, 16:38
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Код:
var
  hNotepad: THandle;
  hEdit: THandle;
begin
  hNotepad:=FindWindow('Notepad', nil);
  if hNotepad=0 then raise Exception.Create('!Notepad');
  hEdit:=FindWindowEx(hNotepad, 0, 'Edit', nil);
  if hEdit=0 then raise Exception.Create('!Edit');
  SendMessage(hEdit, WM_PASTE, 0, 0);
end;
__________________
Пишу программы за еду.
__________________

Последний раз редактировалось NumLock, 06.02.2015 в 18:12.
Ответить с цитированием
Этот пользователь сказал Спасибо NumLock за это полезное сообщение:
Radamant (06.02.2015)
  #7  
Старый 06.02.2015, 19:46
Radamant Radamant вне форума
Прохожий
 
Регистрация: 06.02.2015
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Хорошо. А как работать тогда с Меню в чужих окнах? Как нажимать на них?
Ответить с цитированием
  #8  
Старый 08.02.2015, 08:09
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

WM_COMMAND
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:24.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter