JP6490278B2 - Application program - Google Patents
Application program Download PDFInfo
- Publication number
- JP6490278B2 JP6490278B2 JP2018088203A JP2018088203A JP6490278B2 JP 6490278 B2 JP6490278 B2 JP 6490278B2 JP 2018088203 A JP2018088203 A JP 2018088203A JP 2018088203 A JP2018088203 A JP 2018088203A JP 6490278 B2 JP6490278 B2 JP 6490278B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- application program
- pointing device
- cursor
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 6
- 230000010365 information processing Effects 0.000 claims description 3
- 239000003086 colorant Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 7
- 238000010827 pathological analysis Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Images
Landscapes
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、アプリケーションプログラムに関する。特に、大きな画像を表示したり、画像を拡大し、部分画像をスクロールしながら表示したりするアプリケーションプログラムにおける操作指示受付方法に関する。 The present invention relates to an application program. In particular, the present invention relates to an operation instruction receiving method in an application program for displaying a large image, enlarging an image, and displaying a partial image while scrolling.
従来、大きな画像を表示したり、画像を拡大し、部分画像をスクロールしながら表示したりする方法として、スクロールや変倍等の操作指示を効率的に行うための操作指示方法が開示されている。
例えば特許文献1では、右手用マウスと左手用マウスを用いてスクロール操作を効率的に行う方法が開示されている。
Conventionally, as a method of displaying a large image, enlarging an image, and displaying a partial image while scrolling, an operation instruction method for efficiently performing operation instructions such as scrolling and zooming has been disclosed. .
For example, Patent Document 1 discloses a method of efficiently performing a scroll operation using a right hand mouse and a left hand mouse.
マウスに代表されるポインティングデバイスは様々なメーカーにより提供されているが、一般的にはオペレーティングシステム(以下、OSとも呼ぶ)に適合したドライバを必要とする。そして、ポインティングデバイスからの操作指示はドライバを経由して、OSが提供する汎用的な通知の方法(例えばメッセージ)を用いてアプリケーションプログラムに通知される。そのため、アプリケーションプログラムではOSが提供する汎用的な通知の仕組みのみを意識すればよく、デバイスメーカーの都合に依存することなくアプリケーションプログラム開発を行うことが可能となる。また、ユーザーが使用するデバイスを変更した際にも、アプリケーションプログラムを作り替えることなく使用することが可能となっている。 A pointing device represented by a mouse is provided by various manufacturers, but generally requires a driver adapted to an operating system (hereinafter also referred to as an OS). An operation instruction from the pointing device is notified to the application program via a driver using a general notification method (for example, a message) provided by the OS. For this reason, the application program only needs to be aware of the general-purpose notification mechanism provided by the OS, and can develop the application program without depending on the convenience of the device manufacturer. In addition, even when the user changes the device to be used, the application program can be used without recreating it.
近年、ポインティングデバイスはUSB(Universal Serial Bus)を使用してPCに接続される場合が多く、複数のポインティングデバイスを1台のPCに接続することが可能である。しかし、上述のようにアプリケーションプログラムではポインティングデバイスを識別していないため、どのポインティングデバイスを使用しても、カーソルの移動やクリック、ダブルクリックなどの汎用的な操作指示入力を入力することが可能である。しかし、一般的なポインティングデバイスの使い方では個々のデバイスを区別しないため、ポインティングデバイスの種類ごとに使いやすいアプリケーションプログラムの機能を使用することは困難である。 In recent years, a pointing device is often connected to a PC using a USB (Universal Serial Bus), and a plurality of pointing devices can be connected to a single PC. However, since the pointing device is not identified in the application program as described above, it is possible to input general-purpose operation instruction inputs such as cursor movement, click, and double-click, regardless of which pointing device is used. is there. However, since the use of a general pointing device does not distinguish individual devices, it is difficult to use an easy-to-use application program function for each type of pointing device.
ここで、特許文献1においては、左手用マウス内の制御部、あるいは、ドライバにおいてデバイスごとの操作指示内容を決定している。しかし特許文献1では、効率的なスクロール操作は可能になるものの、特殊なポインティングデバイス、あるいは、ドライバを使用する必要がある。そのため、ユーザーが好みのポインティングデバイスを使用できなくなる可能性や、ポインティングデバイスを変更する場合にはアプリケーションプログラム自体の変更が必要になる可能性がある。 Here, in Patent Document 1, the operation instruction content for each device is determined by the control unit in the left-handed mouse or the driver. However, in Patent Document 1, although an efficient scroll operation is possible, it is necessary to use a special pointing device or a driver. Therefore, there is a possibility that the user cannot use a favorite pointing device, and there is a possibility that the application program itself needs to be changed when changing the pointing device.
本発明は上記課題に鑑みてなされたものであり、その目的は、汎用的なポインティングデバイスを用いて効率的な操作指示入力が可能なアプリケーションプログラムを提供することにある。 The present invention has been made in view of the above problems, and an object of the present invention is to provide an application program that enables efficient operation instruction input using a general-purpose pointing device.
本発明は、以下の構成を採用する。すなわち、
第1ポインティングデバイス又は第2ポインティングデバイスから入力された指示に基づいて、実行すべき動作内容を決定する決定工程と、
前記指示が、前記第1ポインティングデバイスからの指示であるか又は前記第2ポインティングデバイスからの指示であるかを識別する識別工程と、
表示部の表示を制御する表示制御工程と、
を情報処理装置に実行させるためのアプリケーションプログラムであって、
前記指示が同一であったとしても、その同一の指示が、前記第1ポインティングデバイスからの指示であった場合には第1動作内容を実行させ、前記第2ポインティングデバイスからの指示であった場合には前記第1動作内容と異なる第2動作内容を実行させることが可能であり、
前記第1ポインティングデバイスからの指示に基づいて移動する第1ポインタと前記第2ポインティングデバイスからの指示に基づいて移動する第2ポインタの表示状態を異ならせることが可能である
ことを特徴とするアプリケーションプログラムである。
The present invention employs the following configuration. That is,
A determination step of determining an operation content to be executed based on an instruction input from the first pointing device or the second pointing device;
An identification step for identifying whether the instruction is an instruction from the first pointing device or an instruction from the second pointing device;
A display control process for controlling display of the display unit;
Is an application program for causing an information processing apparatus to execute
Even if the instructions are the same, if the same instruction is an instruction from the first pointing device, the first operation content is executed, and the instruction is from the second pointing device. Can execute a second operation content different from the first operation content,
It is possible to change the display state of the first pointer that moves based on an instruction from the first pointing device and the second pointer that moves based on an instruction from the second pointing device.
This is an application program characterized by the above.
本発明によれば、汎用的なポインティングデバイスを用いて効率的な操作指示入力が可能なアプリケーションプログラムを提供できる。 ADVANTAGE OF THE INVENTION According to this invention, the application program which can perform efficient operation instruction input using a general purpose pointing device can be provided.
以下に図面を参照しつつ、本発明の好適な実施の形態について説明する。ただし、以下に記載されている構成部品の寸法、材質、形状およびそれらの相対配置などは、発明が適用される装置の構成や各種条件により適宜変更されるべきものであり、この発明の範囲を以下の記載に限定する趣旨のものではない。 Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. However, the dimensions, materials, shapes, and relative arrangements of the components described below should be changed as appropriate according to the configuration of the apparatus to which the invention is applied and various conditions. It is not intended to limit the following description.
<実施例1>
以下、図面を用いて本発明の要旨を説明する。図1は本発明における装置構成を示している。図1中、符号100はコンピュータを示しており、本発明の対象となるアプリケーションのプログラムを実行する。符号101はディスプレイであり、アプリケーションのウィンドウを表示する。
<Example 1>
Hereinafter, the gist of the present invention will be described with reference to the drawings. FIG. 1 shows an apparatus configuration according to the present invention. In FIG. 1,
符号102はマウスを示しており、本発明におけるユーザーからの操作指示を入力するためのポインティングデバイスの一つである。符号103はマウス102に取り付けられている左ボタンであり、ディスプレイ101上に表示される不図示のマウスカーソルが指し示す位置にある対象を選択する際等に使用される。符号104は回転可能なホイールであり、回転量に応じた操作指示を与える際に有効である。ホイール104の活用例としては、例えば画像表示を行うアプリケーションにおいて、上下方向のスクロール、あるいは、表示倍率の変更を行う際に使うなどが挙げられる。符号105はマウス102に取り付けられている右ボタンであり、前述のカーソルが指し示す位置において使用可能なメニューを表示する際などに使用される。
符号106はトラックボールであり、ボール107を回転させることにより、マウス102を移動させた時と同様にマウスカーソルの位置を移動させることが可能なポインティングデバイスの一つである。符号108はトラックボール106に取り付けられている左ボタンであり、前述の左ボタン103と同様の機能を有する。符号109は右ボタンであり、前述の右ボタン105と同様の機能を有する。符号110はキーボードであり、文字入力を行う際に使用される。なお、マウスおよびトラックボールのボタンの左右とは、マウスを把持するユーザーからみた向きを表す。
図2は、本発明のアプリケーションプログラムを実行するコンピュータ100の内部構成、および、各種デバイスとの関係を示している。符号200はCPUであり、処理に必要な演算を行う。符号201はROMであり、記憶されているプログラムやデータを読み出すことが可能である。符号202はRAMであり、プログラムや処理に必要なデータの書き込み、あるいは、読み出しが可能である。符号203はプログラムや画像データなどの書き込み、あるいは、読み出しが可能なストレージであり、HDDやSSDなどから構成される。符号204〜207はインターフェースであり、それぞれディスプレイ101、マウス102、トラックボール106、キーボード110に接続されている。CPU200、またはCPU200が動作するのに必要な要素の組み合わせ、あるいはコンピュータ100全体は、本発明のアプリケーションプログラムを実行する情報処理装置として機能する。
FIG. 2 shows the internal configuration of the
次に、図3を用いて本発明におけるアプリケーションプログラムの適用例を示す。図3(a)は医療用画像を表示するアプリケーションプログラムの例であり、ディスプレイ101上にアプリケーションウィンドウ300が表示されている。そして、アプリケーションウィンドウ300中には医療用画像301が表示されている。医療用画像の例としては、レントゲン、CT、MRIなどが挙げられるが、さらに好適な例としてはプレパラートを高倍率のレンズを用いて拡大して撮像する病理診断用画像が挙げられる。
Next, an application example of the application program according to the present invention will be described with reference to FIG. FIG. 3A is an example of an application program that displays a medical image, and an
病理診断用画像のように被写体であるプレパラート全体の観察とともに拡大して細部を観察する必要のある画像の場合、観察時には画像のスクロールや表示倍率の変更が必要となる。表示倍率が低すぎると細部が観察できないため、良好な診断のためには少なくとも所定の値以上の表示倍率が必要になる。その所定の表示倍率における画像の大きさがアプリケーションウィンドウより大きい場合、ウィンドウ中には全体画像の一部である部分画像が表示され、スクロールを行って画像中の表示位置(切り取られる部分画像)を変更する。 In the case of an image that needs to be enlarged and observed in detail along with observation of the entire preparation as a subject, such as an image for pathological diagnosis, scrolling of the image and change of the display magnification are required at the time of observation. If the display magnification is too low, details cannot be observed. Therefore, a display magnification of at least a predetermined value is required for a good diagnosis. When the image size at the predetermined display magnification is larger than the application window, a partial image that is a part of the entire image is displayed in the window, and the display position (the cut partial image) in the image is scrolled. change.
さらに、注目箇所に対してマークやコメントを付加する等が行われる場合もある。302はカーソルであり、ディスプレイ101上の位置を指定する際に使用される。カーソル302は、マウス102の移動、あるいは、トラックボール106のボール107の回転など、ポインティングデバイスを用いた移動指示を与えることにより移動させる。
Furthermore, a mark or a comment may be added to the attention location. A
図3(b)は、地図を表示するアプリケーションプログラムの例であり、ディスプレイ101上にアプリケーションウィンドウ303が表示されている。そして、アプリケーションウィンドウ303中には道路や建物を含む地図画像304が表示されている。地図を見る際には、例えば所定の場所から目的地への経路を調べる等が行われるが、2点間の距離が離れている場合には、画像をスクロールさせながら見る必要がある。また、縮小表示をしながら大まかな経路を検索するとともに、必要に応じて一部を拡大表示しながら細かい道を調べるなどの表示倍率の変更が行われる場合がある。また、近年では経路の自動検索機能が付いた地図アプリケーションプログラムもあり、経路の開始地点と目的地を指定することなども行われる。
FIG. 3B is an example of an application program that displays a map, and an
図3(a)、(b)に示したように、1つの画面内に収まらない表示を行う場合には、スクロールや表示倍率の変更、そして、画像内の位置の指定などの操作が行われる場合がある。一般的なコンピュータには操作指示入力手段としてマウス102とキーボード110が使用される。特に、マークの付加や地図上の場所を指定するといったような画像中の所定位置を指定する場合には、マウス102を用いると操作性が良い。また、表示倍率変更のように一次元の尺度を切り替える場合では、一次元の動きに限定されているホイール104を用いると操作性が良い。しかし、大きな画像のスクロール等は、マウス102よりも二次元方向に自由に移動可能なトラックボール106の方が操作性が良いことが、一般的に知られている。
As shown in FIGS. 3A and 3B, when a display that does not fit within one screen is performed, operations such as scrolling, changing display magnification, and specifying a position in the image are performed. There is a case. A general computer uses a
ここで、マウス102やトラックボール106は様々なメーカーから様々な形状の製品が発売されていて、ユーザーごとに好みの製品は異なる。しかし、特許文献1のように特殊なデバイスやドライバが必要な場合、デバイスやドライバが対応していなければ、上述のように機能ごとに使い分けることが困難となる。本発明は、特殊なデバイスやドライバを用いることなく、アプリケーションプログラムの機能ごとに最適な操作指示デバイスを使用することを可能にするものである。
Here, as for the
図4は、本実施例における操作指示伝達経路を示す図である。符号400はアプリケーションプログラムであり、オペレーティングシステム(OS)401の管理下で動作するソフトウェアである。符号402はマウス102からの入力を受け付け、OS401に操作指示内容を伝達するドライバである。符号403はトラックボール106からの入力を受け付け、OS401に操作指示内容を伝達するドライバである。ドライバ402、403からの操作指示入力は、OS401を経由してアプリケーションプログラム400に伝達される。
FIG. 4 is a diagram showing an operation instruction transmission path in the present embodiment.
ここで、ポインティングデバイスを使用したマウスカーソル302に対する標準的な操作指示命令は、OS401によって一般化された操作指示命令として定義されている。そのため、OS401からアプリケーションプログラム400に伝達される情報は、操作入力デバイスであるマウス102やトラックボール103、あるいは、ドライバ402、403を区別することなく、一般化された操作指示命令404として伝達される。一般化された操作指示命令404として代表的なものはメッセージであり、例えば、マウス102を移動させたことを通知するメッセージや、左ボタン103が押下されたことを通知するメッセージなどが挙げられる。
Here, a standard operation instruction command for the
また、通常アプリケーションプログラム400は操作指示を入力したデバイスを意識しないようにすることで、ポインティングデバイスに依存しないように作成される。しかし、本発明のアプリケーションプログラムにおいては、OS401を介してデバイスを特定する。これにより、アプリケーションプログラム400において操作指示命令404、および、操作指示命令404に対応する操作指示を入力したデバイスの情報を考慮してアプリケーションプログラム400の動作を決定することが可能となる。その結果、汎用的な複数のポインティングデバイスを用いて、アプリケーションプログラム400の機能ごとに最適なデバイスを割り当てることが可能となる。
Further, the
図5は本実施例におけるアプリケーションプログラム400の機能ブロック図である。符号500はOS401から送信される操作指示命令を示すメッセージを入力する入力端子である。なお入力端子500から入力されるメッセージは、前述のポインティングデバイスの操作指示に限らない。例えば、アプリケーションのメニューを選択したことを示すメッセージ等、アプリケーションプログラム400に通知する必要のあるあらゆるメッセージを含む。
FIG. 5 is a functional block diagram of the
符号501はメッセージ受信部であり、受信したメッセージを蓄積するメッセージキューや、メッセージが届いたか否かを判定する判定手段などを具備する。符号502はデバイス検出部であり、受信したメッセージに対応するデバイスの識別情報を検出する。符号503はデバイス記憶部であり、アプリケーションプログラム400の機能ごとに、対応するデバイスの識別情報を記憶する。なお、デバイス記憶部503には、予め設定された識別情報を記憶するようにする。また、デバイス記憶部503は全ての機能に対して識別情報を記憶する必要はなく、特定のデバイスによる操作に対応させたい機能についてのみ情報を記憶するようにしても良い。
符号504は動作内容決定部であり、受信したメッセージ、および、デバイス検出部502で検出した識別情報、および、デバイス記憶部503に記憶された識別情報に基づいてアプリケーションプログラム400の動作内容を決定する。符号505はスクロール制御部であり、動作内容決定部504において表示画像のスクロール指示がなされたと判定された場合にスクロール動作を実行する。符号506は表示倍率制御部であり、動作内容決定部504において表示倍率の変更指示がなされたと判定された場合に表示倍率の変更を実行する。
An operation
符号507は画像読み込み部であり、動作内容決定部504において新たな画像を表示する指示がなされたと判定された場合に、指定された画像を読み込んで表示する。符号508は終了処理部であり、動作内容決定部504においてアプリケーションプログラム400を終了させる指示がなされたと判定された場合に、アプリケーションプログラム400を終了させる。符号509はカーソル表示状態制御部であり、動作内容決定部504の決定内容に応じて、カーソル表示制御を行う。
図6は本実施例におけるアプリケーションプログラム400の動作フローを示すフローチャートである。処理が開始されるとまず、ステップ600においてアプリケーションプログラムの初期化処理が行われ、アプリケーションウィンドウの表示が行われる。ステップ601では、操作指示命令を示すメッセージを受信したか否かを判定する。メッセージを受信していないと判定されると再度ステップ601を実行し、メッセージの受信を待つ。ステップ601においてメッセージを受信したと判定されるとステップ602に移行し、受信したメッセージをメッセージキューから取得する。ステップ603では、メッセージに対応するデバイスの識別情報を検出する。
FIG. 6 is a flowchart showing the operation flow of the
ステップ604ではメッセージの内容を判定し、カーソルの移動を示す内容であった場
合にはステップ605に進む。ステップ605では使用されたデバイスの識別情報がスクロール用のデバイスの識別情報と一致するか否かを判定する。ステップ605において一致すると判定された場合には、ステップ606においてスクロール量の決定を行った後に、ステップ607でスクロールを実行する。そして、ステップ608においてカーソルを非表示状態にした後に、再びステップ601においてメッセージ受信待ちを行う。ステップ605において識別情報がスクロール用のデバイスの識別情報と一致しないと判定された場合には、通常のマウスカーソルの移動指示であったと判定する。そして、ステップ609においてカーソルを表示状態にした後に、再びステップ601においてメッセージ受信待ちを行う。
In step 604, the content of the message is determined. If the content indicates the movement of the cursor, the process proceeds to step 605. In step 605, it is determined whether or not the device identification information used matches the device identification information for scrolling. If it is determined in step 605 that they match, the scroll amount is determined in step 606 and then scrolling is performed in step 607. In step 608, the cursor is set in a non-display state, and then in step 601, message reception is waited again. If it is determined in step 605 that the identification information does not match the identification information of the scroll device, it is determined that the instruction is a normal mouse cursor movement instruction. Then, after setting the cursor to the display state in step 609, the message reception is waited again in step 601.
一方、ステップ604においてメッセージの内容がカーソルの移動を示す内容ではなかった場合、処理はステップ610に移行し、メッセージの内容がホイールの回転を示す内容であるか否かを判定する。ステップ610において、メッセージの内容がホイールの回転を示す内容であった場合処理はステップ611に移行し、ホイールの回転量、および、回転方向に基づいて表示倍率の決定を行う。そして、ステップ612で表示倍率の変更を行った後、再びステップ601においてメッセージ受信待ちを行う。 On the other hand, when the content of the message is not the content indicating the movement of the cursor in step 604, the process proceeds to step 610, and it is determined whether or not the content of the message is the content indicating the rotation of the wheel. In step 610, when the content of the message indicates the rotation of the wheel, the process proceeds to step 611, and the display magnification is determined based on the rotation amount and the rotation direction of the wheel. Then, after the display magnification is changed in step 612, message reception is waited again in step 601.
ステップ610においてメッセージの内容がホイールの回転を示す内容ではなかった場合、処理はステップ613に移行し、メッセージの内容がファイルを開く内容であるか否かを判定する。ステップ613において、メッセージの内容がファイルを開く内容であった場合、処理はステップ614に移行し、指定された画像ファイルの読み込み、すなわち画像入力を行う。そして、ステップ615において読み込んだ画像の表示を行った後、再びステップ601においてメッセージ受信待ちを行う。
If it is determined in step 610 that the message content does not indicate wheel rotation, the process proceeds to step 613 to determine whether the message content is for opening a file. In step 613, when the content of the message is the content of opening the file, the process proceeds to step 614, and the designated image file is read, that is, the image is input. In
ステップ613においてメッセージの内容がファイルを開く内容ではなかった場合、処理はステップ616に移行し、メッセージの内容がアプリケーションプログラムの終了を示す内容であるか否かを判定する。ステップ616において、メッセージの内容がアプリケーションプログラムの終了を示す内容であった場合には、アプリケーションプログラムを終了させる。一方、メッセージの内容がアプリケーションプログラムの終了を示す内容でなかった場合には、再びステップ601においてメッセージ受信待ちを行う。 If it is determined in step 613 that the content of the message is not the content for opening the file, the process proceeds to step 616 to determine whether or not the content of the message indicates the end of the application program. In step 616, if the content of the message indicates the end of the application program, the application program is ended. On the other hand, when the content of the message is not the content indicating the end of the application program, in step 601 the message reception is waited again.
なお、図6に示したフローにおいて、ステップ603のデバイスの検出処理は、メッセージ内容の判定処理であるステップ604、605、610、613等の後に必要な場合のみ行うようにしても良い。また、図6のフローにおいては、ステップ610でメッセージの内容がホイールの回転を示す内容であった場合、あるいはステップ613でメッセージの内容がファイルを開く内容であった場合にはカーソル状態の変更を行っていない。これは現在のカーソル表示状態を維持することを意味しているが、現在の状態を維持することも、カーソル表示状態制御部509が行うカーソル表示制御の内容に含まれる。なお、本発明は図6のフローに限定されるものではなく、動作内容とカーソル表示状態の制御の処理順が入れ替わっても構わない。また、ステップ610でメッセージの内容がホイールの回転を示す内容であった場合、あるいはメッセージの内容がファイルを開く内容であった場合にカーソルの表示状態を特定の状態にするようにしても良い。
In the flow shown in FIG. 6, the device detection process in step 603 may be performed only when necessary after steps 604, 605, 610, 613, etc., which are message content determination processes. In the flow of FIG. 6, if the message content indicates the rotation of the wheel in step 610 or if the message content is the content for opening a file in step 613, the cursor state is changed. not going. This means that the current cursor display state is maintained, but maintaining the current state is also included in the contents of the cursor display control performed by the cursor display
図7はステップ606のスクロール方法、および、スクロール移動量の決定方法の例を示す図である。図7(a)において、符号700はアプリケーションウィンドウを示している。701はアプリケーションウィンドウ700内の所定位置(例えばウィンドウ中心などのカーソルの移動が全方向に可能な位置)を指すように移動されたカーソルであり、スクロール移動量を決定する際の基準位置を示している。符号702はスクロール用のデバイスからのマウス移動指示によって移動したカーソルである。そして、マウス移動指示を示すメッセージを受信すると、カーソル位置701と702、および、方向の比較によ
り移動量(X、Y方向)を決定する。さらに、移動量決定後にカーソル702を強制的に701のカーソル位置に移動させることにより、カーソルが画面端部に移動して、それ以上同じ方向に移動できなくなることを防止する。
FIG. 7 is a diagram showing an example of the scroll method in step 606 and the method for determining the scroll movement amount. In FIG. 7A,
なお、スクロール用デバイスではないマウス移動指示からスクロール用デバイスのマウス移動指示に切れ変わった際に、カーソル位置を記憶しておき、カーソルを非表示にする。逆に、スクロール用デバイスのマウス移動指示からスクロール用デバイスではないマウス移動指示に切れ変わった際に、記憶していたカーソル位置にカーソルを移動させ、且つ、カーソルを表示状態にすると良い。このようにすることで、画面上に無意味な移動を繰り返すカーソルが表示されなくなるため、画像の閲覧を妨げることなく画面表示が可能となる。 When the mouse movement instruction that is not the scroll device is changed to the mouse movement instruction of the scroll device, the cursor position is stored and the cursor is not displayed. On the contrary, when the mouse movement instruction of the scroll device is switched to the mouse movement instruction that is not the scroll device, the cursor may be moved to the stored cursor position and the cursor may be displayed. By doing in this way, a cursor that repeats meaningless movement is not displayed on the screen, so that it is possible to display the screen without obstructing image browsing.
図7(b)は、ステップ606のスクロール量の決定方法の他の例を示す図である。図7(b)においては、画像表示領域703以外に、スクロール制御用領域704を有している。符号705は基準位置であり、カーソル位置706との位置、および、方向の相対的な関係により、移動量(X、Y方向)を決定する。ここで、スクロール用デバイスではないマウス移動指示に切れ変わった場合には、カーソル位置を記憶した後に、カーソル位置を画像表示領域703中のカーソル位置707に強制的に移動させる。一方、スクロール用デバイスのマウス移動指示に切れ変わった際には、カーソル位置を記憶した後に、カーソル位置を強制的に706に移動させる。
FIG. 7B is a diagram showing another example of the scroll amount determination method in step 606. In FIG. 7B, in addition to the
なお、スクロール用デバイスではないマウス移動指示に切れ変わった場合には、スクロール操作が停止したとみなしてカーソル位置706を705の位置に移動させても良い。また、スクロール制御領域には705を中心とする不感領域708を設けておくのも良い。そして、領域708中にカーソルが存在する場合には移動させないようにすることで、スクロールの停止を行いやすくなる。
Note that, when the mouse movement instruction that is not a scroll device is changed, the
なお、移動量は基準位置とカーソル位置の相対的な距離に比例するようにしても良いが、細かい手の動きによってカーソルが意図しない変動をする可能性がある。このような場合、単純に距離に比例する移動量とすると、移動速度や移動方向にムラが発生してしまい、観察が行いにくくなる恐れがある。 The amount of movement may be proportional to the relative distance between the reference position and the cursor position, but the cursor may change unintentionally due to fine hand movements. In such a case, if the movement amount is simply proportional to the distance, unevenness occurs in the movement speed and movement direction, which may make observation difficult.
そのため、予め定められた固定的な移動量を設定するようにしても良い。例えば、移動速度が一つの固定値で、移動方向が縦横のみに限定するなどが挙げられる。また、固定値を複数持たせておき、基準位置とカーソル位置の相対的な距離が所定の閾値を超えた場合に切り替えて適用するなどを行っても良い。例えば、相対的なカーソル位置が所定以上離れていた場合には、高速な手の動きによりスクロールの動きにムラが発生しやすくなるため、固定的な速度で縦横斜めの8方向に限定する。逆に、相対的なカーソル位置が所定以上離れていなかった場合には、低速な手の動きにより細かい操作を感覚的に行わせるために、移動量は基準位置とカーソル位置の相対的な距離に比例するようにする等が挙げられる。 For this reason, a predetermined fixed movement amount may be set. For example, the moving speed is one fixed value, and the moving direction is limited to vertical and horizontal directions. Alternatively, a plurality of fixed values may be provided, and switching may be applied when the relative distance between the reference position and the cursor position exceeds a predetermined threshold. For example, when the relative cursor position is more than a predetermined distance, the scroll movement is likely to be uneven due to the high-speed hand movement. On the other hand, if the relative cursor position is not more than the predetermined distance, the amount of movement is the relative distance between the reference position and the cursor position in order to make fine operations sensuously by slow hand movements. And so on.
上述の実施例においては、スクロール動作を行うにあたりカーソルの移動を示すメッセージを判定するようにしたが、これに限るものではない。例えば、トラックボールを使用する場合にはボールの回転量を検出する必要がある。そこで、周期タイマーを使用して所定時間間隔でカーソルの位置を取得し、前回周期において取得した位置との差分を移動量と判定する。そして、該移動量に基づいてスクロール方向とスクロール量を決定するようにするなどの方法でも良い。 In the above embodiment, the message indicating the movement of the cursor is determined when performing the scroll operation, but the present invention is not limited to this. For example, when using a trackball, it is necessary to detect the amount of rotation of the ball. Therefore, the position of the cursor is acquired at predetermined time intervals using a period timer, and the difference from the position acquired in the previous period is determined as the movement amount. A method of determining the scroll direction and the scroll amount based on the movement amount may be used.
この場合には、図7(a)で説明したように、ディスプレイ端部においてスクロールで
きなくなるのを防止するために、移動量の検出後には強制的に701のカーソル位置に移動させると良い。また、上述のようにカーソルを強制的に701に移動させる場合にはカーソルが701の近傍で激しく移動を繰り返し、表示内容を観察する際に邪魔になる可能性がある。そこで、このような場合にはカーソルを非表示にすると良い。
In this case, as described with reference to FIG. 7A, it is preferable to forcibly move the cursor to the
このように本発明は、カーソルの移動を示すメッセージに限らず、カーソルの移動を検出することが可能な他のトリガに基づいてカーソル位置取得を行い、スクロールに反映させるようにする構成であっても構わない。 As described above, the present invention is not limited to the message indicating the movement of the cursor, and is configured to acquire the cursor position based on another trigger that can detect the movement of the cursor and reflect it in the scroll. It doesn't matter.
なお、本発明は上述の実施例に限定されるものではなく、デバイスの判定はメッセージがカーソルの移動であった場合以外に行っても構わない。例えば、2つのポインティングデバイスが両方とも一般的なホイール操作に対応していた場合において、メッセージがホイールの回転であった場合にデバイスを判定するようにしても良い。この場合の好適な例としては、前述の病理診断用画像において奥行き方向に複数枚撮像を行ったZスタック画像を表示する例が挙げられる。この場合、一方のポインティングデバイスでは表示倍率の変更を行い、他方のポインティングデバイスでは奥行き方向の位置を切り替えるようにすると良い。 The present invention is not limited to the above-described embodiment, and device determination may be performed other than when the message is a cursor movement. For example, when both of two pointing devices support general wheel operation, the device may be determined when the message is a wheel rotation. A preferable example in this case is an example in which a Z stack image obtained by capturing a plurality of images in the depth direction in the above-described pathological diagnosis image is displayed. In this case, the display magnification may be changed with one pointing device, and the position in the depth direction may be switched with the other pointing device.
また、本発明はファイルを開く等のメニュー操作に対して行うようにしても良い。例えば、前述の病理診断用画像においては、複数の画像を並列に表示して比較しながら観察する場合と、一枚だけを表示する場合が挙げられる。既に一枚の画像が表示された状態にあるときにファイルを開く操作を行った場合の動作として、一方のポインティングデバイスが用いられた場合には表示済みの画像を閉じて、新たに指定された画像を一枚だけ表示するようにする。そして、他方のポインティングデバイスが用いられた場合には表示領域を分割して、表示済みの画像と新たに指定された画像を並列に表示するようにする等が、好適な例として挙げられる。 Further, the present invention may be performed for a menu operation such as opening a file. For example, in the above-described pathological diagnosis image, there are a case where a plurality of images are displayed in parallel and observed while being compared, and a case where only one image is displayed. When one of the pointing devices is used as an operation to open a file when one image is already displayed, the displayed image is closed and newly specified. Display only one image. When the other pointing device is used, a display area is divided so that a displayed image and a newly designated image are displayed in parallel.
なお、本発明の適用対象としてはメニュー操作に限らず、ボタンやリスト表示などアプリケーション400に固有の様々な対象に対して適用可能である。例えば、使用したポインティングデバイスごとにボタンに対応する動作内容を切り替える、あるいは、使用したポインティングデバイスごとにコンボボックスで選択可能な項目のリストを切り替える、等が好適な例として挙げられる。このように、メニュー操作やボタン等のようなアプリケーション固有の対象に対する操作指示をポインティングデバイスごとに切り替えることは、OS401やドライバ402では実行することが困難である。また、アプリケーション400とOS401の間に変換ソフトウェアを入れるようなことを行った場合も同様に、アプリケーション固有の対象に対する操作指示をポインティングデバイスごとに切り替えることは困難である。つまり、本発明はアプリケーション固有の対象に対する操作指示をポインティングデバイスごとに切り替えることを可能にするものである。
The application target of the present invention is not limited to the menu operation, and can be applied to various targets unique to the
さらに、特殊な動作はトラックボール106の場合に限る物ではなく、例えば使用されたデバイスがマウス102の場合にのみ画像中へのマークやコメントの付加を行う等でも良い。この場合、マウス102を移動させることによりマウスカーソル302を画面内で移動させ、マークやコメントを挿入したい位置に移動させる。そして、左ボタン103、あるいは、右ボタン105、あるいは、キーボード110を使用してコメントや文字列を挿入する等を行う等、機能に応じて適したデバイスを割り当てるようにすると良い。
Further, the special operation is not limited to the case of the
また、上述の説明では、ポインティングデバイスとしてマウスとトラックボールを挙げたが、これに限るものではない。図8は、本発明が適用可能な他のポインティングデバイスの一例を示している。800はノート型のPCを示している。801はタッチパッドであり、持ち運びを想定したノートPCにおいてマウスのような外部デバイスが無くてもカ
ーソル移動やクリック指示を行えるようにするためのポインティングデバイスであり、本発明の適用対象である。
In the above description, a mouse and a trackball are cited as pointing devices, but the present invention is not limited to this. FIG. 8 shows an example of another pointing device to which the present invention is applicable.
また、ノートPC800のディスプレイにはタッチパネル802が搭載されており、指などで画面上に触れることにより直接的に画面上の位置を指定することが可能である。タッチパネル802もマウスなどと同様に位置を指定することが可能であり、指定した画面上の位置を現在のカーソル位置とみなせることから本発明の適用対象であるポインティングデバイスの一つである。
A
そして、上述の説明と同様に、例えばトラックボール106をスクロール用、タッチパッド801、あるいは、タッチパネル802を他の作業用に割り振る等を行う例が考えられる。なお、図8においてはノートPCを想定したが、本発明はこれに限定されるものでは無く、デスクトップPC用のディスプレイ101に搭載されたタッチパネルであっても構わない。また、キーボードが無く画面上のタッチパネルで通常の操作を行うタブレット型の端末が近年普及している。このようなタブレット型の端末にポインティングデバイスを接続し、該ポインティングデバイスとタブレット型端末に搭載されているタッチパネルの組み合わせに対して本発明を適用しても良い。
Similar to the above description, for example, an example in which the
図7(a)を用いた上述の例においては、スクロールか否かに応じてカーソルの表示状態を、非表示、あるいは表示に切り換える例を示した。このような制御はスクロールに限るものではなく、選択された機能におけるカーソル表示の必要性を考慮して決定すると良い。例えば、上述の例においては、表示画像をスクロールさせる際にはカーソルが表示されている必要はなく、むしろ表示させたカーソルが画像の観察の邪魔になる。このような機能の場合には、カーソルを非表示状態にすると良い。また、画像中へのコメントやマークの付加などのように位置を指し示す必要がある機能の場合にはカーソルが表示されている必要があるため、カーソルを表示状態にすると良い。また、カーソルが不要な場合には、完全に非表示にする以外にも半透明にする、大きさを小さくする、あるいは色を変更して背景色に近づける等により見えにくくするようにしても良い。 In the above example using FIG. 7A, an example has been shown in which the display state of the cursor is switched to non-display or display depending on whether scrolling is performed. Such control is not limited to scrolling, and may be determined in consideration of the necessity of cursor display in the selected function. For example, in the above-described example, when the display image is scrolled, the cursor does not need to be displayed, but rather the displayed cursor interferes with the image observation. In the case of such a function, the cursor may be hidden. In addition, in the case of a function that needs to indicate a position, such as adding a comment or a mark to an image, the cursor needs to be displayed. If the cursor is unnecessary, it may be made difficult to see by making it semi-transparent, reducing the size, or changing the color to bring it closer to the background color in addition to making it completely hidden. .
また、図7(a)において、カーソルが不要な場合には701をウィンドウの中心位置近傍以外の位置に設定してカーソル表示を行うようにするなど、画像の観察の邪魔になりにくいようにしても良い。図7(a)、(b)に示すように、本発明におけるカーソル表示状態とは、カーソルの色、透明度、大きさ、位置など様々な表示状態を含むものである。つまり、表示画像上でのカーソルの視認性が変更可能なものであればいかなるものであっても良い。 Further, in FIG. 7A, when the cursor is unnecessary, the cursor display is performed by setting 701 to a position other than the vicinity of the center position of the window so as not to obstruct the image observation. Also good. As shown in FIGS. 7A and 7B, the cursor display state in the present invention includes various display states such as the color, transparency, size, and position of the cursor. That is, any object may be used as long as the visibility of the cursor on the display image can be changed.
本発明の好適な例としては汎用的なポインティングデバイスやドライバのみを使用する例を挙げた。しかし、特殊なポインティングデバイスやドライバと、汎用的なポインティングデバイスを組み合わせて使用する場合において、特定の汎用ポインティングデバイスに対して上述した方法を適用するようにしても良い。組み合わせる特殊なデバイスの例としては、ゲームコントローラのように数多くのボタンを有しておりドライバ設定で対応する操作指示内容を割り振るようなデバイスが挙げられる。 As a preferred example of the present invention, an example in which only a general-purpose pointing device or driver is used has been given. However, when a special pointing device or driver and a general-purpose pointing device are used in combination, the method described above may be applied to a specific general-purpose pointing device. As an example of a special device to be combined, there is a device such as a game controller that has a large number of buttons and allocates corresponding operation instruction contents by driver setting.
使用されたデバイスごとに切り替える処理は上述した内容に限定されるものではなく、他の様々な操作指示入力に対して行うようにしても良い。また、実行する動作内容も同様に上述の内容に限定されるものではない。また、複数のデバイスを接続する方法は、上述したUSBでの接続やコンピュータに備え付ける以外にも、任意の方式を採用できる。 The process of switching for each used device is not limited to the above-described content, and may be performed for various other operation instruction inputs. Similarly, the operation content to be executed is not limited to the above-described content. As a method for connecting a plurality of devices, an arbitrary method can be adopted in addition to the above-described USB connection or installation in a computer.
以上説明したように本実施例によると、汎用的な複数のポインティングデバイスを用いて、アプリケーションプログラムの機能ごとに最適なデバイスを割り当てることが可能と
なる。例えば、カーソルの長距離移動が必要な広範囲のスクロール処理と、正確なポインティングを行う処理を両立させるような、広い範囲の画面表示を簡易に実現できる。また、本発明はアプリケーションプログラムの機能と一般的なメッセージにより実現可能であるため、オペレーティングシステム、ドライバまたはミドルウェア等の制約を低減させ、任意のデバイスを使用可能となる。
As described above, according to the present embodiment, it is possible to assign an optimum device for each function of an application program using a plurality of general-purpose pointing devices. For example, it is possible to easily realize a wide range of screen display that can achieve both a wide-range scrolling process that requires a long distance movement of the cursor and a process of performing accurate pointing. In addition, since the present invention can be realized by the function of the application program and general messages, restrictions on the operating system, driver, middleware, etc. can be reduced, and any device can be used.
100:コンピュータ,102:マウス,106:トラックボール,200:CPU 100: Computer, 102: Mouse, 106: Trackball, 200: CPU
Claims (7)
前記指示が、前記第1ポインティングデバイスからの指示であるか又は前記第2ポインティングデバイスからの指示であるかを識別する識別工程と、 An identification step for identifying whether the instruction is an instruction from the first pointing device or an instruction from the second pointing device;
表示部の表示を制御する表示制御工程と、 A display control process for controlling display of the display unit;
を情報処理装置に実行させるためのアプリケーションプログラムであって、Is an application program for causing an information processing apparatus to execute
前記指示が同一であったとしても、その同一の指示が、前記第1ポインティングデバイスからの指示であった場合には第1動作内容を実行させ、前記第2ポインティングデバイスからの指示であった場合には前記第1動作内容と異なる第2動作内容を実行させることが可能であり、 Even if the instructions are the same, if the same instruction is an instruction from the first pointing device, the first operation content is executed, and the instruction is from the second pointing device. Can execute a second operation content different from the first operation content,
前記第1ポインティングデバイスからの指示に基づいて移動する第1ポインタと前記第2ポインティングデバイスからの指示に基づいて移動する第2ポインタの表示状態を異ならせることが可能である It is possible to change the display state of the first pointer that moves based on an instruction from the first pointing device and the second pointer that moves based on an instruction from the second pointing device.
ことを特徴とするアプリケーションプログラム。An application program characterized by that.
前記第1ポインタと前記第2ポインタの色を異ならせることが可能である It is possible to make the colors of the first pointer and the second pointer different
ことを特徴とする請求項1に記載のアプリケーションプログラム。The application program according to claim 1.
前記第1ポインタと前記第2ポインタの透明度を異ならせることが可能である The transparency of the first pointer and the second pointer can be made different.
ことを特徴とする請求項1又は2に記載のアプリケーションプログラム。The application program according to claim 1 or 2, characterized in that
前記第1ポインタと前記第2ポインタの大きさを異ならせることが可能である The first pointer and the second pointer can be different in size.
ことを特徴とする請求項1乃至3のいずれか1項に記載のアプリケーションプログラム。The application program according to any one of claims 1 to 3.
前記第2動作内容は前記表示部に表示させた画像のスクロールである The second operation content is scrolling of an image displayed on the display unit.
ことを特徴とする請求項1乃至4のいずれか1項に記載のアプリケーションプログラム。The application program according to any one of claims 1 to 4, characterized in that:
ことを特徴とする請求項1乃至5のいずれか1項に記載のアプリケーションプログラム。The application program according to any one of claims 1 to 5, characterized in that:
ことを特徴とする請求項6に記載のアプリケーションプログラム。The application program according to claim 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018088203A JP6490278B2 (en) | 2018-05-01 | 2018-05-01 | Application program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018088203A JP6490278B2 (en) | 2018-05-01 | 2018-05-01 | Application program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014041766A Division JP6335553B2 (en) | 2014-03-04 | 2014-03-04 | Application program, information processing apparatus and control method thereof |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019026793A Division JP2019106204A (en) | 2019-02-18 | 2019-02-18 | Application program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018142359A JP2018142359A (en) | 2018-09-13 |
JP6490278B2 true JP6490278B2 (en) | 2019-03-27 |
Family
ID=63528250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018088203A Expired - Fee Related JP6490278B2 (en) | 2018-05-01 | 2018-05-01 | Application program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6490278B2 (en) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04177474A (en) * | 1990-11-08 | 1992-06-24 | Matsushita Electric Ind Co Ltd | Graphic processor |
JPH0822370A (en) * | 1994-07-06 | 1996-01-23 | Minolta Co Ltd | Information processor |
US6204837B1 (en) * | 1998-07-13 | 2001-03-20 | Hewlett-Packard Company | Computing apparatus having multiple pointing devices |
JP2001014260A (en) * | 1999-06-29 | 2001-01-19 | Casio Comput Co Ltd | Input controller and recording medium |
US6643721B1 (en) * | 2000-03-22 | 2003-11-04 | Intel Corporation | Input device-adaptive human-computer interface |
US6895589B2 (en) * | 2000-06-12 | 2005-05-17 | Microsoft Corporation | Manager component for managing input from existing serial devices and added serial and non-serial devices in a similar manner |
JP2002244781A (en) * | 2001-02-15 | 2002-08-30 | Wacom Co Ltd | Input system, program, and recording medium |
-
2018
- 2018-05-01 JP JP2018088203A patent/JP6490278B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2018142359A (en) | 2018-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6564493B2 (en) | User interface for manipulating user interface objects | |
US9841878B1 (en) | Methods, systems, and computer program products for navigating between visual components | |
JP4093823B2 (en) | View movement operation method | |
JP4173718B2 (en) | Window switching device and window switching program | |
KR101304461B1 (en) | Method and apparatus of gesture-based user interface | |
US8661361B2 (en) | Methods, systems, and computer program products for navigating between visual components | |
US20090138800A1 (en) | Apparatus, method and computer-readable storage medium for directing operation of a software application via a touch-sensitive surface | |
US20090019385A1 (en) | Management of Icons in a Display Interface | |
EP2270641A1 (en) | Operation Control Apparatus, Operation Control Method, and Computer Program | |
US20120174020A1 (en) | Indication of active window when switching tasks in a multi-monitor environment | |
US20130300710A1 (en) | Method and electronic device thereof for processing function corresponding to multi-touch | |
US20060146059A1 (en) | Apparatus, method and program product for rearraging frames | |
US20050052471A1 (en) | Information processing apparatus, control method therefor, and computer-readable memory | |
US20140082559A1 (en) | Control area for facilitating user input | |
WO2012144984A1 (en) | Touch screen selection | |
US8839156B2 (en) | Pointer tool for touch screens | |
CN109426360A (en) | Display control unit, indicating pointer display method and non-transitory recording medium | |
JP2009223494A (en) | Information processor | |
US20070094614A1 (en) | Data processing device | |
JP6490278B2 (en) | Application program | |
JP2019106204A (en) | Application program | |
JP6335553B2 (en) | Application program, information processing apparatus and control method thereof | |
US20190087077A1 (en) | Information processing apparatus, screen control method | |
US20150253948A1 (en) | Non-transitory computer readable medium storing an application program | |
JP2003108286A (en) | Display method, display program and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20181116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190121 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190226 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6490278 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |