Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2010, 10:01   #1
waterya
Пользователь
 
Регистрация: 24.10.2009
Сообщений: 23
По умолчанию Не повторяется действие

у меня есть программа. Вот код

Код:
procedure TForm2.F1(var Message:TMessage);
var
 Mylink: string ;
 stat: string;

begin
form2.Show;
form2.FormStyle:=fsStayOnTop;
edit1.PasteFromClipboard;
edit1.Text:=edit1.text +' ';
stat:= Copy(edit1.text, 1, Pos(' ',edit1.Text)-1);
Mylink:= MySite + '/' + stat ;
combobox1.Text :=mylink;
webbrowser1.Navigate(combobox1.text);
edit1.Text:='';

end;
Он работает как надо, страница открывается. Но когда я пробую еще раз использовать свою горячую клавишу - она уже не работает. почему? пожалуйста обьясните

Последний раз редактировалось Stilet; 17.06.2010 в 10:09.
waterya вне форума Ответить с цитированием
Старый 17.06.2010, 10:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я тут вообще не вижу ни слова про горячие клавиши.
Как ты их регистрируешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.06.2010, 10:12   #3
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

Цитата:
edit1.PasteFromClipboard;
А буфере обмена точно есть какие-то данные?
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab
ex.cluz вне форума Ответить с цитированием
Старый 17.06.2010, 11:12   #4
waterya
Пользователь
 
Регистрация: 24.10.2009
Сообщений: 23
По умолчанию

Код:
procedure TForm2.FormCreate(Sender: TObject);
begin
RegisterHotKey(Handle, 0, MOD_CONTROL, VK_Up);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnRegisterHotKey(Handle,0);
end;

end.
продолжение кода. Клавиши регистрируются все правильно 1 раз работает. Но больше 1 раща программа не работает

Последний раз редактировалось Stilet; 17.06.2010 в 12:15.
waterya вне форума Ответить с цитированием
Старый 17.06.2010, 11:27   #5
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

Вот так оно лучше работает:
Код:
var
  Form2:TForm2;
  ID_HK: integer;


procedure TForm2.FormCreate(Sender: TObject);
begin
   ID_HK:= GlobalAddAtom('MyHotKey');
   RegisterHotKey(0, ID_HK, MOD_CONTROL, VK_Up);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  UnRegisterHotKey(0,ID_HK);
  DeleteAtom(ID_HK);
end;
end.
принимаю благодарности в письменном виде( весы слева)...
MaxNik2009 вне форума Ответить с цитированием
Старый 17.06.2010, 12:11   #6
waterya
Пользователь
 
Регистрация: 24.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от MaxNik2009 Посмотреть сообщение
Вот так оно лучше работает:
Код:
var
  Form2:TForm2;
  ID_HK: integer;


procedure TForm2.FormCreate(Sender: TObject);
begin
   ID_HK:= GlobalAddAtom('MyHotKey');
   RegisterHotKey(0, ID_HK, MOD_CONTROL, VK_Up);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  UnRegisterHotKey(0,ID_HK);
  DeleteAtom(ID_HK);
end;
end.


Извините, но уменя теперь вообще горячая клавиша не работает.
waterya вне форума Ответить с цитированием
Старый 17.06.2010, 12:14   #7
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

извиняюсь...
Код:
var
  Form2:TForm2;
  ID_HK: integer;


procedure TForm2.FormCreate(Sender: TObject);
begin
   ID_HK:= GlobalAddAtom('MyHotKey');
   RegisterHotKey(Handle, ID_HK, MOD_CONTROL, VK_Up);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  UnRegisterHotKey(Handle,ID_HK);
  DeleteAtom(ID_HK);
end;
end.
исправил.
принимаю благодарности в письменном виде( весы слева)...
MaxNik2009 вне форума Ответить с цитированием
Старый 17.06.2010, 12:21   #8
waterya
Пользователь
 
Регистрация: 24.10.2009
Сообщений: 23
По умолчанию

Цитата:
Сообщение от MaxNik2009 Посмотреть сообщение
извиняюсь...
Код:
var
  Form2:TForm2;
  ID_HK: integer;


procedure TForm2.FormCreate(Sender: TObject);
begin
   ID_HK:= GlobalAddAtom('MyHotKey');
   RegisterHotKey(Handle, ID_HK, MOD_CONTROL, VK_Up);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  UnRegisterHotKey(Handle,ID_HK);
  DeleteAtom(ID_HK);
end;
end.
исправил.
Спасибо вы меня уже 2ой раз спасаете на пректе
waterya вне форума Ответить с цитированием
Старый 17.06.2010, 12:45   #9
waterya
Пользователь
 
Регистрация: 24.10.2009
Сообщений: 23
По умолчанию

Но все равно горячая клавиша работает только 1 раз
waterya вне форума Ответить с цитированием
Старый 17.06.2010, 12:52   #10
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

выкладывай код обработки горячих клавиш.
принимаю благодарности в письменном виде( весы слева)...
MaxNik2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление строки с ячейкой, которая повторяется Aneli Microsoft Office Excel 15 25.03.2010 17:18
выполнить действие. IVANSour Общие вопросы Delphi 6 01.02.2009 22:53
Действие с предложением в массиве StudentPolitech Помощь студентам 2 26.12.2008 03:17