Input control method and device and input equipment
By setting a function key to activate the position memory mode and generating a return vector, the problem of the cursor not being able to freely remember and reset with one key in the existing technology is solved, realizing fast and accurate cursor position control and improving operation efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-28
- Publication Date
- 2026-04-03
AI Technical Summary
In existing technologies, users cannot freely select and remember any point on the screen in any application scenario and perform a one-click reset operation, resulting in low cursor movement efficiency.
By setting a function key to activate the position memory mode, the cursor offset relative to the reference position is recorded, and a return vector is generated, enabling the cursor to quickly jump to the reference position.
It enables fast and accurate cursor position memory and one-click reset, improving interaction efficiency and user experience in multi-screen operation and repetitive click scenarios.
Smart Images

Figure CN121785478A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer input control, and more particularly to an input control method, apparatus, and input device. Background Technology
[0002] During computer use, users often need to repeatedly move the cursor to the same location for operations, such as frequently clicking on a fixed area in multi-document interfaces, multi-screen display environments, or repetitive tasks. Existing software provides the function of jumping the cursor to a predetermined location within the interface via shortcut keys or shortcut menus to improve operational efficiency.
[0003] However, software navigation functions typically rely on pre-defined coordinates within the software. This prevents users from freely selecting and remembering any point on the screen in any application scenario and performing a one-click reset. Therefore, how to achieve free position memory and reset has become an urgent problem to be solved. Summary of the Invention
[0004] This application provides an input control method, apparatus, and input device to at least solve the above-mentioned technical problems existing in the prior art.
[0005] A first aspect of this application provides an input control method applied to an input device, the input device including at least one set function key, each set function key corresponding to a unique function key identifier, the method comprising: In response to detecting a first key press operation of a set function key, the function key identifier of the triggered set function key is obtained, and the position memory mode corresponding to the function key identifier is activated; In the position memory mode, with the cursor position when the position memory mode is activated as the reference position, the movement data generated by the movement of the input device relative to the reference position is obtained, and the movement data is subjected to reverse accumulation operation to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
[0006] In one possible implementation, the method further includes: In response to detecting a second key operation of the set function key, a homing vector corresponding to the function key identifier is sent to the host terminal, so that the host terminal controls the cursor to jump to the reference position according to the homing vector.
[0007] In one possible implementation, the movement data includes at least one movement vector generated by the input device moving in position memory mode; correspondingly, Acquire movement data generated by the movement of the input device relative to the reference position, and perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier, including: Generate a repositioning vector with an initial value of zero; The movement vector generated by each movement of the input device is obtained sequentially, and the negative operation is performed on each movement vector before it is accumulated with the current return vector.
[0008] In one possible implementation, after the cursor jumps to the reference position, the method further includes: When a second key press is received for the set function key, and the input device has not moved before receiving the second key press, a jump return signal is sent to the host terminal, so that the host terminal responds to the jump return signal and moves the cursor position to the position where the cursor was before the jump.
[0009] In one possible implementation, the method further includes: In response to detecting a third key operation of the set function key, the homing vector corresponding to the function key identifier is cleared to zero, so as to reset the reference position corresponding to the function key identifier to the current position and start the homing vector calculation with the current position as the reference position.
[0010] In one possible implementation, the method further includes: In response to the detection of a first key press operation of the set function key again, the position memory mode corresponding to the function key identifier is turned off, and the generated homing vector is cleared to terminate the homing vector calculation for the function key identifier and release storage resources.
[0011] A second aspect of this application provides an input control method applied to a host terminal, the method comprising: Receive the homing vector corresponding to the function key identifier sent by the input device; Based on the repositioning vector, control the cursor to jump to the reference position.
[0012] In one possible implementation, after controlling the cursor to jump to the reference position, the method further includes: Receive the jump return signal sent by the input device; In response to the jump return signal, the cursor position is moved to the position where the cursor was before the jump.
[0013] A third aspect of this application provides an input control device for use in an input device, the input device including at least one set function key, each set function key corresponding to a unique function key identifier, the device comprising: The activation module is used to respond to the detection of a first key operation of a set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier. The calculation module is used to acquire movement data generated by the movement of the input device relative to the reference position when the position memory mode is activated, with the cursor position when the position memory mode is activated as the reference position, and to perform reverse accumulation calculation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
[0014] A fourth aspect of this application provides an input control device applied to a host computer, the device comprising: The receiving module is used to receive the homing vector corresponding to the function key identifier sent by the input device; The control module is used to control the cursor to jump to the reference position according to the homing vector.
[0015] A fifth aspect of this application provides an input device, the input device comprising: At least one set function key is used to receive user trigger operations, the trigger operations including a first key operation, a second key operation and a third key operation; The photoelectric module, connected to the first processing module, is used to collect the original trajectory signal generated by the movement of the input device and the key trigger signal generated when the input device receives a key operation, and transmit the original trajectory signal to the first processing module. The first processing module, connected to the photoelectric module and the second processing module, is used to convert the original trajectory signal transmitted by the photoelectric module into motion data; The second processing module, connected to the signal transmitting module, is used to respond to the detection of a first key operation of a set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier; in the position memory mode, with the cursor position when the position memory mode is activated as the reference position, obtain the movement data generated by the movement of the input device relative to the reference position, and perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier, the return vector being used to control the cursor of the input device to jump to the reference position; The signal transmitting module is used to send the homing vector to the host terminal; The battery is connected to the at least one setting function key, the photoelectric module, the first processing module, the second processing module, and the signal transmitting module, respectively, and is used to provide working power for the input device.
[0016] A sixth aspect of this application provides an electronic device comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method described in this application.
[0017] According to a seventh aspect of this application, a non-transitory computer-readable storage medium is provided storing computer instructions for causing the computer to perform the methods described in this application.
[0018] The input control method, apparatus, and input device of this application, in response to detecting a first key press operation of a set function key, acquire the function key identifier of the triggered set function key and activate a position memory mode corresponding to the function key identifier. In the position memory mode, using the cursor position when the position memory mode is activated as a reference position, acquire movement data generated by the input device moving relative to the reference position, and perform reverse accumulation calculation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position. By configuring a set function key, based on different trigger operations of the set function key, the position to be remembered is recorded and the jump to the remembered position is realized, avoiding the tedious process of repeatedly manually moving the cursor to a specific position in traditional operations. This achieves fast and accurate cursor position memory and one-click reset functions, effectively improving the interaction efficiency and user experience in scenarios such as multi-screen operation and repetitive clicks.
[0019] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0020] The above and other objects, features, and advantages of exemplary embodiments of this application will become readily apparent from the following detailed description taken in conjunction with the accompanying drawings. Several embodiments of this application are illustrated in the drawings by way of example and not limitation, in which: In the accompanying drawings, the same or corresponding reference numerals indicate the same or corresponding parts.
[0021] Figure 1 A schematic diagram illustrating the implementation flow of an input control method provided in an embodiment of this application is shown; Figure 2 This paper illustrates a schematic diagram of the implementation flow of the homing vector calculation operation of the input control method provided in an embodiment of this application; Figure 3 A schematic diagram illustrating the implementation flow of another input control method provided in an embodiment of this application is shown; Figure 4 A schematic diagram of the composition structure of the input device provided in an embodiment of this application is shown; Figure 5 An example diagram of the cursor trajectory provided in an embodiment of this application is shown; Figure 6 This application provides a schematic diagram of the composition structure of an input control device. Figure 7 A schematic diagram of the composition structure of another input control device provided in this application is shown; Figure 8 A schematic diagram of the composition structure of an electronic device according to an embodiment of this application is shown. Detailed Implementation
[0022] To make the objectives, features, and advantages of this application more apparent and understandable, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0023] Figure 1 The diagram illustrates the implementation flow of an input control method provided in an embodiment of this application.
[0024] refer to Figure 1 This application provides an input control method applied to an input device, the input device including at least one set function key, each set function key corresponding to a unique function key identifier, the method including: Operation 101: In response to detecting the first key operation of the set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier.
[0025] The input device is pre-configured with at least one function key, which can be a physical button or a virtual button, and each function key is assigned a unique function key identifier. The input device can be an independent peripheral such as a mouse or stylus, or it can refer to computer devices such as laptops or desktops; this application does not specifically limit this. When the input device is an independent peripheral, the function key can be configured as a physical button and deployed on the independent peripheral, such as on the side button area of a mouse or the side of the stylus's grip. When the input device is a computer, the function key can be a physical button and can be configured on the computer's keyboard, such as a custom shortcut key or Fn key combination at the top of the keyboard, or it can be a virtual button, such as the on-screen virtual keyboard keys built into the operating system.
[0026] When a user performs a first key press on a designated function key on the input device, the input device detects the operation and obtains the unique function key identifier for the currently designated function key. Subsequently, it activates the position memory mode associated with that function key identifier. The position memory mode can be considered as a dedicated working mode of the input device used to record the offset of the cursor relative to a reference position in real time and to provide a computational environment for the subsequent generation of the positioning vector.
[0027] The first button operation can be configured according to actual needs, such as long press, double-click, or single click on a designated function key. A long press refers to a button operation where the duration of the long press exceeds a preset threshold, which can be configured as needed, such as 1 second or 2 seconds. The input device can recognize the first button operation through its built-in processing chip. The recognition process for the first button operation can refer to the conventional mouse button or keyboard button recognition process, for example, detecting the button operation through electrical signal detection, which will not be elaborated here.
[0028] Operation 102: In position memory mode, using the cursor position when position memory mode is activated as the reference position, obtain the movement data generated by the movement of the input device relative to the reference position, and perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
[0029] When position memory mode is enabled, the cursor's current position on the screen is recorded as a reference position. Simultaneously, movement data generated by the input device's movement relative to the reference position is continuously acquired, and this movement data is accumulated in reverse to generate a return vector. The movement data can be a series of movement vectors, such as Δx and Δy. The reverse accumulation operation can be understood as accumulating the negative value of each vector. For example, if the input device moves to the right, generating vector (dx, dy), then the accumulated value of the return vector is -(dx, dy).
[0030] The homing vector is used to control the cursor jump of the input device to the reference position. Specifically, it can be configured to perform specific trigger operations for set function keys or configure specific instructions to control the input device to send the homing vector to the host when cursor jump is required, so that the host will jump the cursor to the reference position. The host can be understood as the host of computer devices such as laptops, desktops, tablets, and smartphones.
[0031] In one embodiment of this application, in response to detecting a second key operation of a set function key, a homing vector corresponding to the function key identifier is sent to the host terminal, so that the host terminal controls the cursor to jump to the reference position according to the homing vector.
[0032] When the user performs a second key press on the designated function key, the input device detects the operation and obtains the current return vector corresponding to the function key identifier. The return vector is then converted into an electrical signal and sent to the host. The host receives the return vector and generates a corresponding cursor movement command, such as simulating a mouse movement event. Based on this command, the cursor immediately jumps to the reference position, achieving one-key return. The second key press operation can be configured as a long press, double-click, or single-click, and it differs from the first key press operation.
[0033] Thus, by configuring and setting function keys, the system records the positions to be remembered and jumps to the remembered positions based on different trigger operations of the function keys. This avoids the tedious process of repeatedly moving the cursor to a specific position in traditional operations, and realizes fast and accurate cursor position memory and one-click reset functions. This effectively improves the interaction efficiency and user experience in scenarios such as multi-screen operation and repetitive clicks.
[0034] Figure 2 This paper illustrates a schematic diagram of the implementation process of the homing vector calculation operation of the input control method provided in the embodiments of this application.
[0035] refer to Figure 2 In one embodiment of this application, the movement data includes at least one movement vector generated by the input device moving in position memory mode. In operation 102, acquiring the movement data generated by the input device moving relative to a reference position and performing a reverse accumulation operation on the movement data includes: Operation 201 generates a repositioning vector with an initial value of zero; Operation 202: Sequentially obtain the movement vector generated by each movement of the input device, and perform a negative operation on each movement vector before accumulating it with the current return vector.
[0036] Specifically, motion data can be viewed as at least one motion vector generated during the movement of the input device. For example, when the input device moves from frame M0 to the next frame M1, the motion vector Menw = (x1, y1) can be obtained.
[0037] After the position memory mode is activated, the homing vector is first initialized to zero as the starting state for homing vector accumulation. Then, the movement vectors generated by the input device are monitored and acquired in real time. Each movement vector is negativeed and added to the currently accumulated homing vector. This reverse accumulation calculation method is used to calculate the total displacement required to return from the current position to the reference position. The total displacement is the homing vector.
[0038] For example, taking a mouse as the input device, when the user presses and holds the designated function key at point M2 to activate the position memory mode, an initial return vector O=(0,0) is generated, and the reference position is determined to be the coordinates of point M2. When the mouse moves from M2 to M3, the movement vector Menwold=(x3,y3) is collected, and a reverse cumulative calculation is performed: Olast=(0,0)→Onew=Olast-Mnow=(-x3,-y3); when the mouse continues to move from M3 to M4, a new movement vector Menwold=(x4,y4) is collected, and a second cumulative calculation is performed: Olast=(-x3,-y3)→Onew=Olast-Mnow=(-x3-x4,-y3-y4), and so on, until a second key press is received for the currently corresponding designated function key.
[0039] In one embodiment of this application, after the cursor jumps to the reference position, if a second key operation for the set function key is received again, and the input device has not moved before receiving the second key operation again, a jump return signal is sent to the host terminal, so that the host terminal responds to the jump return signal and moves the cursor position to the position where the cursor was before the jump.
[0040] Specifically, after the cursor jumps back to the previously memorized reference position, if a second key press is received and the input device itself has not moved during this period, it indicates that the user's intention is not to record a new position, but rather to manipulate the cursor. In this case, there is no need to send a new homing vector to the host; only a special jump-back signal needs to be sent to the host.
[0041] After receiving the jump return signal, the host controls the cursor to jump from the current reference position back to the starting position of the last jump action.
[0042] For example, after the cursor jumps back to the reference position from point M5 according to the return vector, if the user does not move the input device but clicks the set function key again, a special jump return signal is generated and sent to the host. After receiving this jump return signal, the host controls the cursor to jump back from the current reference position to the starting position of the last jump, i.e., point M5.
[0043] In one embodiment of this application, in response to detecting a third key operation of a set function key, the homing vector corresponding to the function key identifier is cleared to zero, so as to reset the reference position corresponding to the function key identifier to the current position and start the homing vector calculation with the current position as the reference position.
[0044] Specifically, when a user performs a third button operation (i.e., a quick double click) on an activated function key, the return vector bound to the current function key identifier is reset to zero. This resets the reference position corresponding to the current function key identifier to the current position, ensuring that the return vector is calculated based on the current position when the input device moves again. The third button operation can be configured as a long press, double click, or single click, depending on actual needs. The third button operation differs from both the first and second button operations. For example, if the first button operation is configured as a long press and the second button operation as a single click, the third button operation can be configured as a double click, different from both the first and second button operations.
[0045] In one embodiment of this application, in response to the detection of the first key operation of the set function key again, the position memory mode corresponding to the function key identifier is turned off, and the generated homing vector is cleared to terminate the homing vector calculation for the function key identifier and release storage resources.
[0046] Specifically, when a user performs the first key operation on an already activated function key, the system responds by disabling the position memory mode corresponding to the current function key identifier and clearing all associated data, including the return vector and reference position. This terminates the calculation of the return vector corresponding to the current function key identifier and releases the storage resources used in the return vector calculation process.
[0047] Figure 3 This illustration shows a schematic diagram of the implementation process of another input control method provided in an embodiment of this application.
[0048] refer to Figure 3 This application also provides an input control method applied to a host computer, the method comprising: Operation 301: Receive the homing vector corresponding to the function key identifier sent by the input device; Operation 302: Based on the homing vector, control the cursor to jump to the reference position.
[0049] Specifically, the host-side device driver or dedicated processing service can receive and parse the homing vector from the input device. This homing vector can be viewed on the host as a displacement instruction carrying the homing vector. Then, the host-side operating system recalculates the absolute coordinates of the cursor based on this homing vector. After the calculation is complete, the operating system updates the cursor position matrix in the frame buffer through the display server and outputs the new image frame to the display device, causing the cursor to jump from its current screen position to the calculated new position, i.e., the reference position.
[0050] In one embodiment of this application, after controlling the cursor to jump to the reference position, a jump return signal sent by the input device is also received, and in response to the jump return signal, the cursor position is moved to the position where the cursor was before the jump.
[0051] It should be noted that the specific details of the host-side control of cursor movement based on the homing vector or control of cursor jump based on the signal can be found in the conventional computer control of cursor movement and click process, and will not be repeated in this application.
[0052] Figure 4 A schematic diagram of the composition structure of the input device provided in an embodiment of this application is shown.
[0053] refer to Figure 4 Based on the above input control method, this application also provides an input device, which includes at least one setting function key, an optical module, a first processing module, a second processing module, a signal transmitting module, and a battery. This embodiment of the input device is also known as a mouse.
[0054] At least one of the designated function keys is used to receive user-triggered operations, including first key operation, second key operation, and third key operation.
[0055] At least one function key is located on the side or top of the mouse casing to receive user trigger operations, including first, second, and third button operations. When the user presses the function key, a button trigger signal is generated, and the trigger operation type is identified. For example, a continuous press for more than 1 second is identified as a first button operation, and two quick clicks are identified as a third button operation.
[0056] The photoelectric module, connected to the first processing module, is used to collect the original trajectory signal generated by the movement of the input device and the key trigger signal generated when the input device receives key operation, and transmits the original trajectory signal to the first processing module. The photoelectric module includes a photoelectric sensor. As the mouse moves, the sensor quickly captures the mouse's movement trajectory, compares the next frame with the previous frame, uses the previous frame as the origin, calculates the direction and distance, and generates the raw trajectory signal. This raw trajectory signal can contain displacement components in both the Δx and Δy directions. Simultaneously, the photoelectric module also monitors changes in the trigger state of designated function keys, synchronously transmitting the key trigger signals and the raw trajectory signal to the first processing module.
[0057] The first processing module, connected to the photoelectric module and the second processing module, is used to convert the raw trajectory signal transmitted by the photoelectric module into motion data.
[0058] The first processing module is implemented using a dedicated computing chip, specifically a DSP (Digital Signal Processor) processor or a microprocessor unit (MCU), which has the ability to convert the raw signal into an electrical signal that can be recognized by the computer device.
[0059] After receiving the original trajectory signal sent by the photoelectric module, the first processing module first performs filtering and noise reduction on the signal. Then, according to the preset resolution parameters adapted between the input device and the host, it converts the original trajectory signal into a motion data format defined by the standard HID (Human Interface Device) protocol. This motion data includes displacement direction (such as positive / negative X-axis direction, positive / negative Y-axis direction) and pixel-level displacement (such as X-axis displacement Δx pixels, Y-axis displacement Δy pixels). The converted motion data is simultaneously sent to the second processing module and the signal transmission module.
[0060] The second processing module, connected to the signal transmission module, is used to respond to the detection of the first key operation of the set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier; in the position memory mode, with the cursor position when the position memory mode is activated as the reference position, obtain the movement data generated by the movement of the input device relative to the reference position, and perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
[0061] The second processing module can be implemented using a motion vector memory chip and a processing chip, with a built-in dedicated vector operation unit. When a button trigger signal triggered by a long press is received, the corresponding function key identifier is immediately obtained, and the position memory mode corresponding to the function key identifier is activated. The current cursor screen coordinates are recorded as the reference position, and the return vector is initialized to a zero vector. During the position memory mode activation, the module continuously receives motion data sent by the first processing module, performs a negative operation on each motion vector, and accumulates the data. For example, when a rightward motion vector (10, 0) is detected, the accumulated value of the return vector becomes (-10, 0). When the user clicks the set function key, the currently accumulated return vector is sent to the host terminal through the signal transmission module.
[0062] The signal transmission module, connected to the second processing module, is used to send the homing vector to the host.
[0063] The signal transmitting module is connected to the second processing module and has the ability to convert the data collected by the photoelectric module and the homing vector output by the second processing module into electrical signals that conform to the host's receiving standard. After receiving the homing vector sent by the second processing module, the signal transmitting module converts the homing vector into an electrical signal mode supported by the host and transmits it to the host via Bluetooth, data cable, or various communication links.
[0064] The battery is connected to at least one setting function key, an optoelectronic module, a first processing module, a second processing module, and a signal transmitting module, respectively, and is used to provide operating power for the input device.
[0065] The battery is connected to all components within the input device and is used to provide power to those components.
[0066] In one embodiment of this application, the input device can be a computer device, such as a laptop computer. When the input device is a computer, at least one function key can be placed on the computer keyboard or configured as a virtual key in the computer display interface. When the input device is a computer, the trigger signal of the function key and the original signal of the cursor movement trajectory can be converted into standard HID protocol data packets (including X / Y axis displacement values) through a USB (Universal Serial Bus) host controller, and the displacement data can be stored, back-accumulated, and calculated to generate a homing vector. When a jump trigger operation is received for the function key (long press followed by a single click), the homing vector is released, and the homing displacement is executed to control the cursor to jump from the real-time position to the memorized reference position.
[0067] It should be noted that the specific cursor displacement calculation and jump control process can refer to the standard process for handling absolute displacement instructions or simulating mouse input events in conventional operating systems, and this application will not elaborate on this further.
[0068] Figure 5 An example diagram of the cursor trajectory provided in an embodiment of this application is shown.
[0069] To further illustrate the technical solution of this application, a specific application example is provided below.
[0070] refer to Figure 5 In this application example, the input device is a mouse, the host is a computer, the input control method is also called the mouse jump control method, and the function keys are also called jump keys. This specific application example includes two application scenarios: setting one function key and setting two function keys, as detailed below: 1. An application scenario for setting function keys 1) During mouse movement, its photoelectric sensor continuously collects the original trajectory signal and calculates the displacement direction and distance through inter-frame comparison. For example, when the mouse moves from position M0 to M1, the photoelectric sensor transmits the original trajectory signal to the first processing module (DSP processor or microprocessor). The first processing module converts the original trajectory signal into a digital signal form of movement vector M = (x1, y1) and sends M to the computer through the signal transmission module.
[0071] 2) After receiving the movement vector, the computer converts the signal into standard HID protocol data packets via the USB host controller. The driver parses the movement data into relative movement events, and the kernel input subsystem calculates the pixel displacement based on the screen resolution. The event queue then notifies the window manager to update the cursor coordinates. Finally, the graphics card driver refreshes the frame buffer, moving the cursor from position M0 to M1.
[0072] 3) When the user continues to move the mouse, and the mouse body moves from position M1 to position M2 in the next frame, the photoelectric sensor obtains the cursor movement data M at this time. Now = (x2, y2), the mouse inputs this movement data M into the computer via an electrical signal, and the computer cursor moves according to the movement data (x2, y2) to the position M2.
[0073] 4) When the user performs the first key operation on the designated function key at position M2, the input device sends an electrical signal to the first processing module to activate the position memory mode. The first processing module synchronously sends the real-time movement data to the second processing module to activate the position memory mode. The second processing module records the current cursor position as the reference position M2 and initializes the homing vector O = Olast - Mennow = (0, 0).
[0074] 5) When the mouse continues to move, and the mouse body moves from position M2 to position M3 in the next frame, the photoelectric sensor obtains the cursor movement vector Menwold = (x3, y3). The mouse inputs this movement vector M to the computer via an electrical signal, and the computer cursor moves according to the vector (x3, y3) to position M3. At this time, the return vector O = Olast - Menwold = -(x3, y3).
[0075] Continuing to move the mouse, when the mouse body moves from frame M3 to the next frame M4, the photoelectric sensor obtains the cursor movement vector Meno = (x4, y4). The mouse inputs this movement vector M to the computer via an electrical signal, and the computer cursor moves according to the vector (x4, y4) to position M4. At this time, the return vector O = Olast - Meno = (-x3, -y3) - (x4, y4), and summing them gives O = (Xo, Yo).
[0076] Suppose that the "click" setting function key is clicked at this time, and an electrical signal to execute the cursor return is sent to the second processing module. The second processing module sends O(Xo, Yo) to the computer through the signal transmission module. The computer cursor moves according to the vector (xo, yo) and moves to the position M2. At this time, the return vector O is refreshed to (x3+x4, y3+y4).
[0077] 6) If the cursor does not move while it is in position M2, click the setting function key again and the cursor will return to position M4.
[0078] 7) Double-click the function key repeatedly to reset the vector to zero O=(0,0) and start accumulating again.
[0079] 8) Press and hold the setting function key again to stop and clear the calculation of the reset vector O.
[0080] 2. Application scenarios for the two function keys (jump key a / jump key b) 1) At position M2, perform the first key operation on the set function key a, activate the position memory mode corresponding to key a, record the current position as the reference position a, and initialize the return vector Oa = (0,0) of key a.
[0081] 2) Move the mouse to position M3, collect the movement vector Menw = (x3, y3), and update Oa = (-x3, -y3).
[0082] 3) When the user performs the first key operation on the set function key b at position M3, the position memory mode corresponding to key b is activated, the current position is recorded as the reference position b, and the return vector of key b is initialized to Ob = (0,0).
[0083] 4) The input device moves to position M4, collects the movement vector Menw = (x4, y4), and synchronously updates the two return vectors: Oa = (-x3-x4, -y3-y4) and Ob = (-x4, -y4).
[0084] 5) Move the mouse to position M5 and collect the movement vector Menwold = (x5, y5). Update Oa = (-x3-x4-x5, -y3-y4-y5) and Ob = (-x4-x5, -y4-y5). If a second key operation is performed on key a at this time, the second processing module sends Oa to the computer and controls the cursor to jump to the reference position a (position M2).
[0085] Figure 6 A schematic diagram of the composition structure of an input control device provided in this application is shown.
[0086] refer to Figure 6 This application provides an input control device for use in an input device. The input device includes at least one set function key, each set function key corresponding to a unique function key identifier. The device includes: The activation module 601 is used to respond to the detection of the first key operation of the set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier. The arithmetic module 602 is used to acquire movement data generated by the movement of the input device relative to the reference position when the position memory mode is activated, with the cursor position when the position memory mode is activated as the reference position, and to perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
[0087] Figure 7 A schematic diagram of the composition structure of another input control device provided in this application is shown.
[0088] refer to Figure 7 This application provides an input control device applied to a host computer, the device comprising: The receiving module 701 is used to receive the homing vector corresponding to the function key identifier sent by the input device; The control module 702 is used to control the cursor to jump to the reference position according to the homing vector.
[0089] According to embodiments of this application, this application also provides an electronic device and a readable storage medium.
[0090] Figure 8A schematic block diagram of an example electronic device 800 that can be used to implement embodiments of this application is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the application described and / or claimed herein.
[0091] like Figure 8 As shown, device 800 includes a computing unit 801, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 802 or a computer program loaded from storage unit 808 into random access memory (RAM) 803. RAM 803 may also store various programs and data required for the operation of device 800. The computing unit 801, ROM 802, and RAM 803 are interconnected via bus 804. Input / output (I / O) interface 805 is also connected to bus 804.
[0092] Multiple components in device 800 are connected to I / O interface 805, including: input unit 806, such as keyboard, mouse, etc.; output unit 807, such as various types of monitors, speakers, etc.; storage unit 808, such as disk, optical disk, etc.; and communication unit 809, such as network card, modem, wireless transceiver, etc. Communication unit 809 allows device 800 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0093] The computing unit 801 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the various methods and processes described above, such as input control methods. For example, in some embodiments, the input control method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer program may be loaded and / or installed on device 800 via ROM 802 and / or communication unit 809. When the computer program is loaded into RAM 803 and executed by the computing unit 801, one or more steps of the input control method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform input control methods by any other suitable means (e.g., by means of firmware).
[0094] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transferring data and instructions to the storage system, the at least one input device, and the at least one output device.
[0095] The program code used to implement the methods of this application may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that when executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0096] In the context of this application, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0097] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0098] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0099] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.
[0100] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this application can be achieved, and this is not limited herein.
[0101] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "a plurality of" means two or more, unless otherwise explicitly specified.
[0102] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. An input control method, characterized in that, Applied to an input device, the input device including at least one set function key, each set function key corresponding to a unique function key identifier, the method includes: In response to detecting a first key press operation of a set function key, the function key identifier of the triggered set function key is obtained, and the position memory mode corresponding to the function key identifier is activated; In the position memory mode, with the cursor position when the position memory mode is activated as the reference position, the movement data generated by the movement of the input device relative to the reference position is obtained, and the movement data is subjected to reverse accumulation operation to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
2. The input control method according to claim 1, characterized in that, The method further includes: In response to detecting a second key operation of the set function key, a homing vector corresponding to the function key identifier is sent to the host terminal, so that the host terminal controls the cursor to jump to the reference position according to the homing vector.
3. The input control method according to claim 1, characterized in that, The movement data includes at least one movement vector generated by the input device moving in position memory mode; The step of acquiring movement data generated by the movement of the input device relative to the reference position, and performing reverse accumulation operation on the movement data, includes: Generate a homing vector with an initial value of zero; The movement vector generated by each movement of the input device is obtained sequentially, and the negative operation is performed on each movement vector before it is accumulated with the current return vector.
4. The input control method according to claim 1, characterized in that, After the cursor jumps to the reference position, the method further includes: When a second key press is received for the set function key, and the input device has not moved before receiving the second key press, a jump return signal is sent to the host terminal, so that the host terminal responds to the jump return signal and moves the cursor position to the position where the cursor was before the jump.
5. The input control method according to claim 1, characterized in that, The method further includes: In response to detecting a third key operation of the set function key, the homing vector corresponding to the function key identifier is cleared to zero, so as to reset the reference position corresponding to the function key identifier to the current position and start the homing vector calculation with the current position as the reference position.
6. The input control method according to claim 1, characterized in that, The method further includes: In response to the detection of a first key press operation of the set function key again, the position memory mode corresponding to the function key identifier is turned off, and the generated homing vector is cleared to terminate the homing vector calculation for the function key identifier and release storage resources.
7. An input control method, characterized in that, Applied to the host side, the method includes: Receive the homing vector corresponding to the function key identifier sent by the input device; Based on the repositioning vector, control the cursor to jump to the reference position.
8. The input control method according to claim 7, characterized in that, After controlling the cursor to jump to the reference position, the method further includes: Receive the jump return signal sent by the input device; In response to the jump return signal, the cursor position is moved to the position where the cursor was before the jump.
9. An input control device, characterized in that, Applied to an input device, the input device including at least one set function key, each set function key corresponding to a unique function key identifier, the device comprising: The activation module is used to respond to the detection of a first key operation of a set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier. The calculation module is used to acquire movement data generated by the movement of the input device relative to the reference position when the position memory mode is activated, with the cursor position when the position memory mode is activated as the reference position, and to perform reverse accumulation calculation on the movement data to generate a return vector corresponding to the function key identifier. The return vector is used to control the cursor of the input device to jump to the reference position.
10. An input control device, characterized in that, Applied to the host side, the device includes: The receiving module is used to receive the homing vector corresponding to the function key identifier sent by the input device; The control module is used to control the cursor to jump to the reference position according to the homing vector.
11. An input device, characterized in that, The input device includes: At least one set function key is used to receive user trigger operations, the trigger operations including a first key operation, a second key operation and a third key operation; The photoelectric module, connected to the first processing module, is used to collect the original trajectory signal generated by the movement of the input device and the key trigger signal generated when the input device receives a key operation, and transmit the original trajectory signal to the first processing module. The first processing module, connected to the photoelectric module and the second processing module, is used to convert the original trajectory signal transmitted by the photoelectric module into motion data; The second processing module, connected to the signal transmitting module, is used to respond to the detection of a first key operation of a set function key, obtain the function key identifier of the triggered set function key, and activate the position memory mode corresponding to the function key identifier; in the position memory mode, with the cursor position when the position memory mode is activated as the reference position, obtain the movement data generated by the movement of the input device relative to the reference position, and perform reverse accumulation operation on the movement data to generate a return vector corresponding to the function key identifier, the return vector being used to control the cursor of the input device to jump to the reference position; The signal transmitting module is used to send the homing vector to the host terminal; The battery is connected to the at least one setting function key, the photoelectric module, the first processing module, the second processing module, and the signal transmitting module, respectively, and is used to provide working power for the input device.