JPH09101881A - カスタムコントロール - Google Patents

カスタムコントロール

Info

Publication number
JPH09101881A
JPH09101881A JP7256290A JP25629095A JPH09101881A JP H09101881 A JPH09101881 A JP H09101881A JP 7256290 A JP7256290 A JP 7256290A JP 25629095 A JP25629095 A JP 25629095A JP H09101881 A JPH09101881 A JP H09101881A
Authority
JP
Japan
Prior art keywords
window
event
custom control
application
parent
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.)
Pending
Application number
JP7256290A
Other languages
English (en)
Inventor
Yoshiaki Arishima
良昭 有島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP7256290A priority Critical patent/JPH09101881A/ja
Publication of JPH09101881A publication Critical patent/JPH09101881A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

(57)【要約】 【課題】 アプリケーションのプログラムを全く修正す
ることなく該アプリケーションの機能を拡張するカスタ
ムコントロールを提供する 【解決手段】 ウインドウ画面上でマウス操作が行なわ
れると、ウインドウシステムのカーネル11よりマウス
操作の種類に応じてイベント1111あるいはイベント
1113が出力される。イベント1111は親ウインド
ウ121を経由してカスタムコントロール13内に設け
られた子ウインドウへ伝えられるが、イベント1113
は親ウインドウ121を経由しないで直接カスタムコン
トロール13内に設けられた親ウインドウ121とは親
子関係のない独立したウインドウ132へ伝達される。
独立したウインドウ132へ伝達されたイベント111
3はカスタムコントロール13によって処理され、処理
の結果である戻り値1115が親ウインドウ121を経
由しないで直接ウインドウシステムのカーネル11へ伝
達される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はウインドウ環境下に
おいてアプリケーションプログラム(以後アプリケーシ
ョンと呼ぶ)の機能を拡張するためのプログラムである
カスタムコントロールに関するものである。
【0002】
【従来の技術】一般に、ウィンドウをベースとするプロ
グラミング環境下では、特定の機能を有するプログラム
を追加することによって目的とするアプリケーションを
比較的簡単に作成することができる言語が多数存在す
る。通常、このようなプログラミング環境下では、上記
の言語が標準で存在する機能を拡張するためのI/Fを設
けており、その機能を拡張するためのプログラムをカス
タムコントロール等と呼んでいる。
【0003】図2は従来のアプリケーションとカスタム
コントロールとの関係を示したシステム構成図である。
図において、21はウインドウシステムの基本機能を実
行するウインドウシステムのカーネル、22は所定の機
能を有するアプリケーション、23はアプリケーション
22の外部に設けられ、このアプリケーション22に特
定の機能を追加するカスタムコントロール、221はア
プリケーション22に設けられた親ウインドウ、231
はカスタムコントロール23に設けられた子ウインド
ウ、2111はキーボード入力やマウスクリックやマウ
スドラッグなどの操作があった場合にウインドウシステ
ムのカーネル21から親ウインドウ221へこの旨を伝
達するイベント、2211は親ウインドウ221から子
ウインドウ231へ伝達されるイベント、2212はイ
ベント2211の処理をカスタムコントロール23が実
行した結果の戻り値、2112は戻り値2212が親ウ
インドウ221を経由してウインドウシステムのカーネ
ル21へ伝達されるイベント、2113はキーボード入
力やマウスクリックやマウスドラッグなどの操作があっ
た場合にウインドウシステムのカーネル21から親ウイ
ンドウ221のみへこの旨を伝達するイベント、211
4はイベント2113に対する処理をアプリケーション
22が実行した結果の戻り値である。
【0004】次に、図2に示した従来のカスタムコント
ロール23を含むアプリケーションシステムの動作を説
明する。図2に示すアプリケーションシステムにおい
て、ウインドウ画面上で操作者がマウスクリックやマウ
スドラッグなどの操作を行うと、ウインドウシステムの
カーネル21より操作の種類に応じたイベント2111
が出力されてアプリケーション22内に設けられた親ウ
インドウ221へ伝達される。親ウインドウ221へ伝
達されたイベント2111はアプリケーション22によ
って処理され、処理の結果である戻り値2112が親ウ
インドウ221からウインドウシステムのカーネル21
へ伝達される。
【0005】また、イベント2113とは異なり、アプ
リケーション22では処理できずカスタムコントロール
23で処理できるイベント2111は、更に親ウインド
ウ221を経由してイベント2211としてカスタムコ
ントロール23内に設けられた子ウインドウ231へ伝
達される。子ウインドウ231へ伝達されたイベント2
211はカスタムコントロール23によって処理され、
処理の結果である戻り値2212が子ウインドウ231
から親ウイントウ221へ伝達される。親ウインドウ2
21はこの戻り値2212を入力して戻り値2112を
出力しウインドウシステムのカーネル21へ伝達する。
このように、アプリケーション22とカスタムコントロ
ール23との間に親子関係が存在し、子であるカスタム
コントロール23へのイベントは全て親であるアプリケ
ーション22を経由して伝えられる。
【0006】
【発明が解決しようとする課題】従来のアプリケーショ
ンシステムは上記のように構成されていたので、システ
ムの変更や拡張など何らかの原因でウインドウシステム
のカーネル21から親ウインドウ221へしか伝わらな
いイベント2111の情報をカスタムコントロール23
に設けられた子ウインドウ231で必要となった場合、
親ウインドウ231を構成するプログラム内の子ウイン
ドウ231との接続部に、イベント2211を子ウイン
ドウ231へ通知するような命令コードを追加する必要
がありカスタムコントロール23を作成する上で作業時
間が増大するという問題点があった。
【0007】本発明は、かかる問題点を解決するために
なされたものであり、親となるアプリケーションの処理
に左右されず様々な処理を行うカスタムコントロールを
提供することを目的とする。
【0008】
【課題を解決するための手段】この発明はカスタムコン
トロール内にアプリケーションと親子関係の無いウイン
ドウを設けるものである。
【発明の実施の形態】
【0009】図1はこの発明に係るアプリケーションと
カスタムコントロールとの関係を示したシステム構成図
である。図において、11はウインドウシステムの基本
機能を実行するウインドウシステムのカーネル、12は
所定の機能を有するアプリケーション、13はアプリケ
ーション12の外部に設けられ、このアプリケーション
12に特定の機能を追加するカスタムコントロール、1
21はアプリケーション22に設けられた親ウインド
ウ、131はカスタムコントロール13に設けられた子
ウインドウ、132はカスタムコンドロール13に設け
られアプリケーション12の親ウインドウ121とは親
子関係のない独立したウインドウ、1111はキーボー
ド入力やマウスクリックやマウスドラッグなどの操作が
あった場合にカスタムコントロール13で処理を実行す
るためにウインドウシステムのカーネル11から親ウイ
ンドウ121へこの旨を伝達するイベント、1211は
イベント1111が親ウインドウ121を経由して子ウ
インドウ131へ伝達されるイベント、1212はイベ
ント1211の処理をカスタムコントロール13で実行
した結果の戻り値、1112は戻り値1212が親ウイ
ンドウ121を経由してウインドウシステムのカーネル
11へ伝達されるイベント、1113はキーボード入力
やマウスクリックやマウスドラッグなどの操作があった
場合にウインドウシステムのカーネル11から親ウイン
ドウ121または独立したウインドウ132へこの旨を
伝達するイベント、1114はイベント1113に対す
る処理をアプリケーション12が実行した結果の戻り
値、1115はイベント1113に対する処理をカスタ
ムコントロールが実行した結果の戻り値である。
【0010】次に、図1に示すこの発明に係るカスタム
コントロール13を含むアプリケーションシステムの動
作を説明する。図1に示すアプリケーションシステムに
おいて、ウインドウ画面上で操作者がマウスクリックや
マウスドラッグなどの操作を行うと、ウインドウシステ
ムのカーネル11より操作の種類に応じたイベント11
13が出力されてアプリケーション22内に設けられた
親ウインドウ121へ伝達される。親ウインドウ121
へ伝達されたイベント1113はアプリケーション12
によって処理され、処理の結果である戻り値1114が
親ウインドウ121からウインドウシステムのカーネル
11へ伝達される。
【0011】また、イベント1113とは異なり、アプ
リケーション12では処理できずカスタムコントロール
13で処理できるイベント1111は、更に親ウインド
ウ121を経由してイベント1211としてカスタムコ
ントロール13内に設けられた子ウインドウ131へ伝
達される。子ウインドウ131へ伝達されたイベント1
211はカスタムコントロール13によって処理され、
処理の結果である戻り値1212が子ウインドウ131
から親ウインドウ121へ伝達される。親ウインドウ1
21はこの戻り値1212を入力して戻り値1112を
出力しウインドウシステムのカーネル11へ伝達する。
このように、アプリケーション12とカスタムコントロ
ール13との間に親子関係が存在し、子であるカスタム
コントロール13へのイベントは親であるアプリケーシ
ョン12を経由して伝えられる。
【0012】一方、ウインドウ画面上で操作者がマウス
クリックやマウスドラッグなどの操作を行うと、ウイン
ドウシステムのカーネル11より操作の種類に応じたイ
ベント1113が同時に親ウインドウ121を経由しな
いで直接カスタムコントロール13内に設けられた親ウ
インドウ121とは親子関係のない独立したウインドウ
132へ伝達される。独立したウインドウ132へ伝達
されたイベント1113はカスタムコントロール13に
よって処理され、処理の結果である戻り値1115が親
ウインドウ121を経由しないで直接ウインドウシステ
ムのカーネル11へ伝達される。
【0013】上述したようにカスタムコントロール13
内には、アプリケーション12内に設けられた親ウイン
ドウ121と親子関係にある子ウインドウ131及び親
子関係の無い独立したウインドウ132が設けられてい
る。この独立したウインドウ132は、ウインドウシス
テムのカーネル11側からみれば一種の親ウインドウで
あるため、親ウインドウのみに送られるイベント111
3または1115をカスタムコントロール13内に設け
られ親ウインドウとは親子関係のない独立したウインド
ウ132で受け取ることが可能となる。
【0014】従って、親ウィンドウ121側ではイベン
ト1113がウインドウシステムから受け取ったことを
カスタムコントロール13へ通知するためのイベントを
出力しなくてもよくなる。これにより親ウインドウ12
1のプログラムにイベント1113があったことをカス
タムコントロール13に知らせるための命令コードを記
述する必要が無い。従って、アプリケーションの機能を
拡張する場合に大容量で複雑なアプリケーションのプロ
グラムを変更する必要がなく、アプリケーションよりも
圧倒的に小容量のカスタムコントロールのみの開発で済
むので、プログラム開発の作業時間の縮減を大幅に図る
ことができるという効果を奏する。また、開発成果物の
品質の向上を図ることができるという効果を奏する。
【0015】例えば、MS-Windowsで用いられるWM_WININ
ICHANGEというメッセージは、システムファイル(WIN.IN
I)に変更があった場合に全ての親ウインドウに送られる
ものである。通常のカスタムコントロール23内のウイ
ンドウ231は子ウィンドウであるため、このメッセー
ジを受け取ることができない。そのため、このメッセー
ジに対応した処理を行わなければいけない場合には、親
ウィンドウ221から何かイベント2211を受け取ら
なくてはいけない。これを図1に示すウインドウ132
を作成することにより、ウインドウシステム11より直
接メッセージ1113を受け取ることが可能となるとと
もに、アプリケーション12側からの通知1211が不
要となる。
【0016】
【発明の効果】本発明によれば、アプリケーションと親
子関係の無い独立したウインドウをカスタムコントロー
ル内に設けることにより、アプリケーションの機能を拡
張する場合に大容量で複雑なアプリケーションのプログ
ラムを変更する必要がなく、アプリケーションよりも圧
倒的に小容量のカスタムコントロールのみの開発で済む
ので、プログラム開発の作業時間の縮減を大幅に図るこ
とができるという効果を奏する。また、開発成果物の品
質の向上を図ることができるという効果を奏する。
【図面の簡単な説明】
【図1】 この発明に係るアプリケーションとカスタム
コントロールとの関係を示したシステム構成図である。
【図2】 従来のアプリケーションとカスタムコントロ
ールとの関係を示したシステム構成図である。
【符号の説明】
11 ウインドウシステムのカーネル 12 アプリケーション 21 ウインドウシステムのカーネル 22 アプリケーション 13 カスタムコントロール 23 カスタムコントロール 131 子ウインドウ 231 子ウインドウ 132 独立したウインドウ 1111 イベント 1112 戻り値 1113 イベント 1114 戻り値 1115 戻り値 1211 イベント 1212 戻り値 2111 イベント 2112 戻り値 2113 イベント 2114 戻り値 2211 イベント 2212 戻り値

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】アプリケーションプログラムを親ウインド
    ウとした場合に子ウインドウとなり上記アプリケーショ
    ンプログラムの機能を拡張するカスタムコントロールを
    作成するプログラミング環境下において、上記カスタム
    コントロール内に上記アプリケーションプログラムと親
    子関係の無いウインドウを設けたことを特徴とするカス
    タムコントロール。
JP7256290A 1995-10-03 1995-10-03 カスタムコントロール Pending JPH09101881A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7256290A JPH09101881A (ja) 1995-10-03 1995-10-03 カスタムコントロール

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7256290A JPH09101881A (ja) 1995-10-03 1995-10-03 カスタムコントロール

Publications (1)

Publication Number Publication Date
JPH09101881A true JPH09101881A (ja) 1997-04-15

Family

ID=17290609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7256290A Pending JPH09101881A (ja) 1995-10-03 1995-10-03 カスタムコントロール

Country Status (1)

Country Link
JP (1) JPH09101881A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552181B2 (en) 2016-12-30 2020-02-04 Dropbox, Inc. User interface extender

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552181B2 (en) 2016-12-30 2020-02-04 Dropbox, Inc. User interface extender

Similar Documents

Publication Publication Date Title
DE69734545T2 (de) Verfahren und Vorrichtung zur Verbesserung der Portierbarkeit einer objektorientierten Schnittstelle zwischen verschiedenen Umgebungen
US6901558B1 (en) System and method for displaying status of background worker threads
US7069507B1 (en) Event routing model for an extensible editor
DE102005028943A1 (de) Numerische Steuerung, die ein in einer Schriftsprache geschriebenes Programm aufrufen kann
US5818445A (en) Method and system for creating computer-program-based applications with developer specified look and feel
US6189047B1 (en) Apparatus and method for monitoring event queue operations with pluggable event queues
US5832266A (en) Encapsulation of applications for inclusion within an object management facility environment
JPH08278871A (ja) 情報処理装置及び方法
JPH11167478A (ja) 警報表示方法及びこれを用いた分散型制御システム
US5495595A (en) Method for employing and external object handler program with another computer application program
KR20030015230A (ko) 개선된 컴퓨터 시스템
JPH09101881A (ja) カスタムコントロール
JPH05298052A (ja) ウインドウシステムおよびイベント処理方法
WO2006114880A1 (ja) 情報連携ウィンドウシステム
HU210893B (en) Method for transmitting information in information processing systems and such information processing system
JPS6115236A (ja) オブジエクトリストの部分作成方法
JPH0455947A (ja) 情報処理装置における処理管理方式
JP2690059B2 (ja) カーソル形状表示処理方式
JPS63317866A (ja) デ−タ出力処理方法
JPH0368995A (ja) 表示装置
JPS61208142A (ja) プロセス間の通信方式
JPH10240311A (ja) プログラマブルコントローラのローダ
JPH02280239A (ja) プログラムダンプ出力方式
Pavlidis Event Handling in the X Toolkit
JPH04260970A (ja) アプリケーションプログラムにおける日本語入力方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040721

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050705

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051101