Ինչպես ընդօրինակել մկնիկը

Բովանդակություն:

Ինչպես ընդօրինակել մկնիկը
Ինչպես ընդօրինակել մկնիկը

Video: Ինչպես ընդօրինակել մկնիկը

Video: Ինչպես ընդօրինակել մկնիկը
Video: Ինչպես նկարել սրամիտ համակարգիչը քայլ առ քայլ սրամիտ իրեր 2024, Մայիս
Anonim

«Մկնիկի» տիպի մանիպուլյատորը ցանկացած համակարգչի անհրաժեշտ հատկանիշն է: Առանց դրա հնարավոր չէ պատկերացնել հսկողություն կամ նավիգացիա հավելվածների միջոցով: Այս մանիպուլյատորը ակտիվորեն շփվում է օգտագործողի հետ ՝ էկրանին ցուցադրելով նրա գործողությունները (շարժումներ, կտտոցներ, ոլորում): Programրագրավորման որոշ առաջադրանքների համար կարող է պահանջվել ծրագրային ապահովման մկնիկի նմանակում:

Ինչպես ընդօրինակել մկնիկը
Ինչպես ընդօրինակել մկնիկը

Դա անհրաժեշտ է

Microsoft Visual C ++. Etուտ զարգացման միջավայր (2003 թվականից ոչ ցածր):

Հրահանգներ

Քայլ 1

Տեղադրեք Microsoft Visual C ++. Net (2003 կամ ավելի ուշ) Developmentարգացման այս միջավայրի մի քանի տարբերակներ կան ՝ վճարովի և անվճար: Դրանք կարելի է ներբեռնել մշակողի կայքում: Տեղադրելուց հետո ստեղծեք նոր նախագիծ և միացրեք System. Windows. Forms- ը և System. Draw- ը, ինչպես ցույց է տրված ստորև. Օգտագործելով System. Windows. Forms; օգտագործելով System. Drawing;

Քայլ 2

Windows օպերացիոն համակարգերում մկնիկը էկրանի վրայով տեղափոխելու համար օգտագործեք գործառույթներ, որոնք ուղղակիորեն կարգավորում են ցուցիչի դիրքը էկրանի վրա: Օգտագործեք, օրինակ, հետևյալ ծածկագիրը. Կուրսորը: Դիրքը = նոր կետ (x, y); Այս տողը կտեղափոխի կուրսորը դեպի կետ (x, y) դասի կառուցողի մեջ նշված դիրքը (որտեղ x և y են դիրքի կոորդինատները, որտեղ պետք է տեղադրվի կուրսորը) … Եթե Ձեզ անհրաժեշտ է բազմակի կարգավորել կուրսորը, ստեղծեք Point դասի մեկ օրինակ և օգտագործեք դրա համար կոորդինատները փոխելու մեթոդը: Սա կփրկի հիշողությունը. Point point = new Point (0, 0); Կուրսոր. Դիրք = կետ. Օֆսեթ (20, 100); Կուրսորը: Դիրք = կետ. Օֆսեթ (40, -20); Այս ծածկագիրը ստեղծում է Point () դասի օբյեկտ 0, 0 կոորդինատներով: Երկրորդ տողը տեղափոխում է Կետը 20 պիքսել X- ով և 100 պիքսել Y- ով: Ներկայիս կոորդինատը, որը ցույց է տալիս կետի օբյեկտը, 20, 100 է: Երրորդ տողը կրկին տեղի է ունենում Օֆսեթ կետը նշված քանակի պիքսելներով (համապատասխանաբար 40 և -20): Ընթացիկ կոորդինատը X- ում 60 (20 + 40) է, Y- ում ՝ 80 (100-20):

Քայլ 3

Օգտագործեք Win32 SendInput () կամ mouse_event () գործառույթները ՝ մկնիկի կտտոցը ընդօրինակելու համար: Օրինակ ՝ աջ կտտոցը ծրագրավորելու համար օգտագործեք հետևյալ ծածկագիրը. // ներմուծել մկնիկի_էվենտ () ՝ [DllImport («Օգտատեր 32.դլլ»)] ստատիկ արտաքին անվավեր մկնիկ (իրադարձություն) dwExtraInfo); // օգտագործման հարմարավետության համար ստեղծեք թվարկում անհրաժեշտ հաստատուններով (դրոշներով) //, որոնք սահմանում են մկնիկի գործողությունները. = 0x0010, Բացարձակ = 0x8000}; // օգտագործումը - կտտացրեք ներքևում նշված կոորդինատներին. Const int x = 39000; // կոորդինատները Xconst int y = 12000; // կոորդինատները ՝ Ymouse_event- ի (MouseFlags. Absolute | MouseFlags. Move, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolute | MouseFlags. RightDown, x, y, 0, UIntPtr. Zero); Բացարձակ | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

Քայլ 4

Ընդօրինակեք մկնիկի կտտոցը ՝ ուղարկելով WM_LBUTTONDOWN և WM_LBUTTONUP հաղորդագրություններ ՝ օգտագործելով Win API SendMessage () գործառույթը: Օրինակ, ինչպես ցույց է տրված ստորև. Անվավեր OnBtPerformClick (օբյեկտ ուղարկող, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_LPTON; WM_LPTON;

Խորհուրդ ենք տալիս: