14. november 1999 - 03:58
#1
Genvejstaster er pr. definition en eller flere specialtaster (ctrl, alt, alt gr, windows, etc...) og et bogstav, eller en specialtast i sig selv (windows, F-tasterne, etc...). At bruge flere bogstaver efter hinanden vile gå imod enhver form for standard.
Hvad du er nødt til at gøre, alt efter om det er til en genvejstast i et kørende program, eller en taste-kombination der skal virke i hele windows er, at fastlægge, hvor lang tid brugeren har til at trykke på alle tasterne. Så skal du bare holde styr på hvor langt brugeren er kommet, modtager du at brugeren har trykket Ctrl+Alt+t (fra dit eksempel) skal den næste tast være Ctrl+Alt+e - er det ikke det, eller er brugeren ikke hurtig nok til at taste bliver den næste tast der skal trykkes på Ctrl+Alt+t (= forfra).
Håber det giver lidt mening. Du skal nok uddybe spørgsmålet lidt... :)
14. november 1999 - 11:04
#2
kombination af tastetryk skal bruges i et kørende program.
her er vist hvordan man får en skjult meddelse i delphi 3.0:
-Open the "About" screen
-While pressing the [Alt] key, type QUALITY
-You will see the list of the Quality Assurance Team.
-While pressing the [Alt] key, type TEAM
-You will see the list of the development Team.
14. november 1999 - 19:18
#3
Her har du et eksempel på hvordan det f.eks. kan gøres i tilfælde af at Shift holdes nede mens brugeren taster t+e+a+m... Det kan let rettes til hvis du ønsker andre indtastninger for at vise form2.
Type
Ar = array[1..4] of boolean; //Bruges til at huske foregående indtastninger.
var
{Globale variable}
a : ar; //variabel af selvdefineret array.
index : integer; //bruges til at huske pladsen i arrayet.
//**************************************************************************//
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
Var
i : integer;
begin
If Shift = [ssShift] then
begin
if (index = 1) and (key = Ord('T')) then A[1] := true;
if (index = 2) and (key = Ord('E')) then A[2] := true;
if (index = 3) and (key = Ord('A')) then A[3] := true;
if (index = 4) and (key = Ord('M')) then A[4] := true;
inc(index);
end else //Hvis ikke shift holdes nede nulstilles arrayet!
begin
for i := 1 to 4 do
A[i] := False;
index := 1;
end;
if ((a[1] = true) and (a[2] = true) and (a[3] = true) and (a[4] = true)) then
begin
for i := 1 to 4 do a[i] := false; //Arrayet nulstilles
index := 1; //Index nulstilles
form2.showmodal; // Form 2 vises.
end;
end;
//*******************************************************************************//
procedure TForm1.FormCreate(Sender: TObject);
begin
index := 1; //index initialiseres
end;
//*******************************************************************************//
Mvh
retep