zubr
Гость
|
|
« Ответ #30 : 10-07-2008 05:26 » |
|
BiT, проект в студию.
|
|
|
Записан
|
|
|
|
zubr
Гость
|
|
« Ответ #31 : 10-07-2008 05:31 » |
|
Я незнаю как это делать еще) (Поставьте брэйкпойнт на неё, потом расскажете)
Осталась только на вас надежда Поиск не рулит книги купил начиная от 400 и кончая 700р тоже не рулят про один винамп пишут. деньги тока зря потратил( А что в книгах по дельфи не написано как отладку делать? Не может быть. Неплохая книга в электронном виде в сети была - "delphi5-руководство разработчика"
|
|
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #32 : 10-07-2008 07:48 » |
|
У меня тока дизайн программы даже кода нету почти ) И еще на форум можно грузить картинки прямо с компа?
|
|
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #33 : 10-07-2008 07:51 » |
|
Вот мой весь проект весь код который я писал работает нетак как надо Меня уже поисковая система блокирует, говорит, что я робот очень много запросов в день) unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons, Menus;
type TForm1 = class(TForm) ListBox1: TListBox; MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; N4: TMenuItem; ComboBox1: TComboBox; Alt: TRadioButton; Shift: TRadioButton; GroupBox2: TGroupBox; GroupBox3: TGroupBox; BitBtn1: TBitBtn; BitBtn2: TBitBtn; GroupBox1: TGroupBox; ComboBox2: TComboBox; N5: TMenuItem; Ctrl: TRadioButton; Panel1: TPanel; memo1: TMemo; procedure FormCreate(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject); var Wnd: hWnd; buff: array[0..127] of Char; begin ListBox1.Clear; Wnd := GetWindow(Handle, gw_HWndFirst); while Wnd <> 0 do begin {Не показываем окна:} if (Wnd <> Application.Handle) and {Собственое окно} IsWindowVisible(Wnd) and {Невидимые окна} (GetWindow(Wnd, gw_Owner) = 0) and {Дочернии окна} (GetWindowText(Wnd, buff, sizeof(buff)) <> 0) {Окна без заголовка} then begin GetWindowText(Wnd, buff, sizeof(buff)); ListBox1.Items.Add(StrPas(buff)); end; Wnd := GetWindow(Wnd, gw_hWndNext); end; ListBox1.ItemIndex := 0; // Здесь надо чтоб выводило тока заданные окна как это сделать?
end;
procedure TForm1.BitBtn1Click(Sender: TObject); begin memo1.Lines.Strings [memo1.CaretPos.Y]:= ctrl.GetNamePath +' + '+ ComboBox1.Text + ' = ' + ComboBox2.Text; // Здесь чтоб выводило список выбранные клавиши например я отметил Ctrl + S + F1 или так Alt + S + F1 надеюсь правильно объяснил memo1.Lines.Add(''); end; procedure TForm1.BitBtn2Click(Sender: TObject); begin if memo1.lines.Count<>0 then memo1.Lines.Delete(memo1.CaretPos.Y); end;
end.
|
|
« Последнее редактирование: 10-07-2008 08:23 от BiT »
|
Записан
|
|
|
|
zubr
Гость
|
|
« Ответ #34 : 10-07-2008 08:14 » |
|
BiT, а где код, работающий с HotKey?
|
|
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #35 : 10-07-2008 08:20 » |
|
Для своей программы я хз как сделать я хотел узнать смысел работы горячих клавиш и потом как ни буть внедрить в свой код, хотя даже нет представления как это сделать.
|
|
« Последнее редактирование: 10-07-2008 08:28 от BiT »
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #36 : 10-07-2008 08:40 » |
|
Вот скриншот моей программы
|
|
« Последнее редактирование: 10-07-2008 08:50 от BiT »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #37 : 10-07-2008 08:48 » |
|
добрая такая программа Улыбнуло ps BiT, между прочим, когда бардак в голове наведёшь (порядок то есть) , будешь хорошие программы создавать ))) Точно те говорю только русский надо учить...
|
|
« Последнее редактирование: 10-07-2008 08:51 от Алексей1153++ »
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #38 : 10-07-2008 09:02 » |
|
Я не спорю у меня много ошибок, и я плохо умею формулировать мысли. это у меня 2 программа первую писал на Vb но там легче.
|
|
« Последнее редактирование: 10-07-2008 09:19 от BiT »
|
Записан
|
|
|
|
zubr
Гость
|
|
« Ответ #39 : 10-07-2008 16:59 » |
|
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private declarations } procedure WMHotkey(var msg:TMessage); message WM_HOTKEY; public { Public declarations }
end;
var Form1: TForm1;
implementation
{$R *.dfm}
var id_HotKeyRun:Integer;
procedure TForm1.FormCreate(Sender: TObject); begin id_HotKeyRun:=GlobalAddAtom('D0273960-97C4-42F0-9C7B-51DF618682F2'); RegisterHotKey(Handle, id_HotKeyRun, 0, Ord('A')); end;
procedure TForm1.FormDestroy(Sender: TObject); begin UnRegisterHotKey(Handle, id_HotKeyRun); end;
procedure TForm1.WMHotkey(var msg:TMessage); var wnd:cardinal; begin wnd := FindWindow('notepad', nil); SetActiveWindow(Handle); SetForegroundWindow(wnd); keybd_event(VK_F1, 0, KEYEVENTF_EXTENDEDKEY or 0, 0); keybd_event(VK_F1, 0, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0); end;
end.
|
|
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #40 : 10-07-2008 17:50 » |
|
Я только не понял, какии сочетание клавиши зарегистрировались .
RegisterHotKey(Handle, id_HotKeyRun, 0, Ord('A')); Прошу прошение это был пробел) Спасибо большое все работает сейчас попробую в свою программу встроить еше неделю буду думать, как это сделать. )
|
|
« Последнее редактирование: 10-07-2008 18:05 от BiT »
|
Записан
|
|
|
|
BiT
Гость
|
|
« Ответ #41 : 11-07-2008 07:04 » |
|
Мне уже стыдно просить, но я, поправ-де почти не че не умею, но учусь. Как теперь привязать клавиши к выбранному в ListBox окну. То есть я выбрал из списка окно в ListBox и прикрепляю к нему F1 . При нажатие сочетание клавиш передается F1 выбранному окну.
И подскажите, что мне почитать, чтоб быстрей понять смысл программировать.
|
|
« Последнее редактирование: 11-07-2008 07:06 от BiT »
|
Записан
|
|
|
|
|