![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
день добрый. не могу понять причину ошибок, которые выдает компилятор в данном исходнике
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Button1: TButton;
Label1: TLabel;
function AltKeyDown : Boolean;
function ShiftKeyDown : boolean;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function AltKeyDown : boolean;
begin
Result:=(Word(GetKeyState(VK_MENU)) and $8000)<>0;
end;
function ShiftKeyDown : boolean;
begin
Result:=(Word(GetKeyState(VK_SHIFT)) and $8000)<>0;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if
AltKeyDown
and
ShiftKeyDown
then
begin
Label1.Caption:='gogogo';
end;
end;
end.как видите, программа должна при нажатии определенных клавиш просто вывести сообщение на лейбл. но имею ошибку "unsatisfied forward or external declaration 'TForm1.AltKeyDown' тот же трабл с TForm1.ShiftKeyDown . насколько понял, я неверно объявил функции? извините за пустяковую тему, но ответ реально ускорит процесс обучения делфи. заранее спс. Последний раз редактировалось Admin, 02.03.2012 в 15:40. |
|
#2
|
||||
|
||||
|
Если обьявил метод в классе, то и реализация должна быть там же:
Код:
function TForm1.AltKeyDown : boolean; begin Result:=(Word(GetKeyState(VK_MENU)) and $8000)<>0; end; и тд. |
|
#3
|
|||
|
|||
|
большое спасибо. все стало ясно.)) и все же... компилятор создает проект,но при нажатии на кнопку - никакого результата.
|
|
#4
|
||||
|
||||
|
Потому что должна быть реакция на событие, недостаточно просто написать "авось я нажму на такую-то клавишу"
Самое простое - посмотри на событие TForm1.FormKeyDown (OnKeyDown). |
|
#5
|
|||
|
|||
|
сорри. все нормально работает. спасибо!
|