Dela via


Snärtar gester

Windows Vista innehåller en uppsättning med åtta grundläggande flickgester. Snärtningar är snabba, linjära pennrörelser som är associerade med rullningsåtgärder och kommandon.

Information om snärtning

Funktionen flicks ger användaren ett nytt sätt att interagera med Tablet PC genom att göra vanliga åtgärder genom att göra snabba gester med pennan. Snärtar samexisterar med och stör inte normala användaråtgärder, till exempel vänster- och högertryck, rullning och pennanteckning.

En snärtning är en enkelriktad penngest som kräver att användaren kontaktar digitaliseraren i en snabb snärtande rörelse. En snärt kännetecknas av hög hastighet och en hög grad av rakhet. En snärt identifieras i dess riktning. Snärtningar kan göras i åtta riktningar som motsvarar kardinal- och sekundär kompassriktningar.

En åtgärd eller snärtåtgärd är åtgärden eller genvägen som utförs som svar på en film. Snärtningar mappas till åtgärder. Följande bild visar ett diagram över åtta pennsnärtningar som motsvarar deras snärtåtgärder.

bild som visar

När användaren flyttar pennan över digitaliseraren på en Tablet PC genererar maskinvaran pennpaket som dirigeras till pennindataundersystemet på Tablet PC-plattformen. Normalt, om pennan används som ersättning för musen, tar pennindataundersystemet dessa pennpaket och skickar dem, eventuellt med ändringar, till User32, Windows-komponenten som ansvarar för bearbetning av musindata. Om pennan används på en pennanteckningsyta återges pennanteckningen i stället för muspaket som genereras.

Snärtidentifieringsrutinen implementeras i undersystemet för pennindata. Snärtidentifieringen börjar vid penn-down och fortsätter tills antingen:

  1. sekvensen med mottagna paket bestäms inte vara en snärt eller

  2. pen-up inträffar.

Medan identifiering av snärtning sker hålls pennpaketen tillbaka och skickas inte till systemet. Detta måste göras eftersom sändning av paket kan störa den snärtåtgärd som utförs. Om du till exempel skickar paket under en film som mappar till en kopieringsåtgärd skulle det ignorera det som valdes, vilket innebär att det inte skulle finnas något att kopiera när åtgärden skickades.

När paketen flödar in i undersystemet för pennindata beräknar snärtidentifieringsrutinen mått på längden, hastigheten, tiden och kurvan för den rörelse som utförs. Med varje paket som tas emot uppdaterar identifieringsrutinen vart och ett av dessa mått. Så snart något av måtten hamnar utanför vad som skulle utgöra en snärt slutar flickidentifieringen och paketen skickas igenom.

Där snärtningar identifieras

Snärtgester möjliggörs av det faktum att drag vanligtvis utförs ganska långsamt. Användaren måste först rikta in sig på startpunkten för dra, utföra dra och sedan rikta in sig på slutpunkten. Normalt tar det för lång tid att kvalificera sig som en film. Men på pennanteckningar ytor snabba slag som skulle kvalificera sig som snärtar sker ofta; att korsa ett "t" är ett vanligt exempel. Som standard är snärtidentifiering inaktiverat över pennytor och aktiveras på hela systemet.

Fokusproblem

När en film har identifierats börjar en sekvens med händelser som i slutändan leder till att systemet utför en viss åtgärd som svar på den film som inträffade. Först avgör identifieringsrutinen i undersystemet för pennindata vilket fönster snärten ska skickas till. Det här är vanligtvis det fönster som har fokus, men det finns undantag. För rullning av snärtar skickas snärten till det fönster som filmen inträffade över. Observera att detta inte nödvändigtvis är fönstret med fokus. När en film skickas till ett fönster som inte har fokus ändras inte fokus till det fönstret.

Snärtåtgärder

När målfönstret har bestämts kan det fönstret hantera själva snärten beroende på standardbeteendet eller det programmerade händelsebeteendet. Program kan svara på den åtgärd som är lämpligast baserat på programmet och riktningen och positionen för snärten. I ett mappningsprogram kan till exempel upp- och nedrullningsbara snärtar zooma in eller ut i stället för att rulla lodrätt, vilket kan förväntas av standardbeteendet.

Om du vill varna ett program om att en snärt har inträffat skickas ett fönstermeddelande till det. Det här fönstermeddelandet innehåller både startpunkten för snärten och riktningen för snärten. Om programmet hanterar det här fönstermeddelandet vidtas ingen ytterligare åtgärd av undersystemet för pennindata.

När en film har identifierats visas visuell feedback som representerar flickåtgärden på skärmen. Den här feedbacken har två syften. Först bekräftar den för användaren att filmen lyckades. För det andra påminner den användaren om vilken åtgärd som utfördes, vilket hjälper användaren att ansluta snärtriktningen med dess associerade åtgärd.

Snärtfeedback består av två delar; en ikon som representerar åtgärden och en etikett som innehåller namnet på åtgärden. Etiketten visas under ikonen. Feedbacken visas omedelbart efter att snärten har identifierats. Även om program kan anpassa sitt beteende som svar på snärtningar genom att hantera snärtfönstrets meddelande, kan programmet inte inaktivera eller ändra feedbacken för snärten.

De flesta program förväntas inte vara flickmedvetna och hanterar därför inte det fönstermeddelande som beskrivs ovan. Om meddelandet inte hanteras vidtar undersystemet för pennindata ytterligare åtgärder. Först letar den upp åtgärden som är associerad med riktningen för den identifierade snärten. Därefter kommer den att vidta åtgärder (beskrivs i tabellen nedan) för att göra så att målfönstret utför den här åtgärden. För många av snärtåtgärderna innebär detta att skicka ett programkommando, men vissa åtgärder som implementeras gör det inte.

Bearbeta programkommandon

Ditt program bör svara på något av de programkommandon som potentiellt kan tilldelas till en snärtgest. Om ett program inte svarar på WM_TABLET_FLICK Messageföljer Windows Vista upp genom att skicka det tillämpliga WM_APPCOMMAND-meddelandet följt av ett WM_KEYDOWN meddelande.

Följande är en lista över programkommandon som kan tilldelas till snärtar, med det meddelande om säkerhetskopieringstangenttryckning som kan skickas.

Befallning Tangenttryckning för säkerhetskopiering
APPCOMMAND_BROWSER_BACKWARD
Ingen
APPCOMMAND_BROWSER_FORWARD
Ingen
APPCOMMAND_COPY
Ctrl+C
APPCOMMAND_PASTE
Ctrl+V
APPCOMMAND_UNDO
Ctrl+Z
APPCOMMAND_DELETE
Del
APPCOMMAND_CUT
Ctrl+X
APPCOMMAND_OPEN
Ctrl+O
APPCOMMAND_PRINT
Ctrl+P
APPCOMMAND_SAVE
Ctrl+S
APPCOMMAND_REDO
Ctrl+Y
APPCOMMAND_CLOSE

Redigeringskommandon som Kopiera, Klistra in, Klipp ut och Ta bort kan riktas mot en markering eller mot objektet som finns vid basen av snärtgesten. Om det inte finns något val kan du använda data i FLICK_POINT Structure för att avgöra vad, om något, objekt kan ha varit målet för redigeringskommandot.

Flicks API-referens

svara på