|
|
テクニカルノート01: コントロールの概要 August 23, 2003 © NSB Corporation. All rights reserved. |
Go to English page.
NS Basic/CE では、ActiveXコントロールと呼ばれる外部ルーチンを使うことができます。それらはマイクロソフト、NS Basic Corporation、またはサードパーティから提供されています。また、eMbedded Visual C++を使って、新しいものを開発できます。
ActiveXコントロールの開発に関する情報は、How to Write and Use ActiveX Controls for Windows CE 3.0(英文)を参照してください。
NS Basic/CEのインストールの際、ROMにまだ入っていなければ、全てのWindows CE用のMicrosoft ActiveXコントロールがインストールされ、登録が行われます。
お使いのWinCEデバイスにコントロールのインストールが終ると、addObjectステートメントを使用して、コントロ−ルからオブジェクトが作成できます。各コントロールの詳細につきましては、当社テクニカルノートを参照してください。マイクロソフトもeMbedded Visual Basicツールキットの一部としてドキュメントを提供しています。それらはマイクロソフトのウェブサイトから入手してください。
全てのActiveXコントロールは、問題なく動作すると言いたいところですが、中には問題が含まれています。しかしながら、それらのコントロールは貴重な付属物であり、98年12月のアップデートで著しく改善されました。NS Basic/CE 2.0以降では、それらのアップデートされたコントロールをインストールします。
マイクロソフトのActiveXコントロールは、他のテクニカルノートで資料が提供されています。また、マイクロソフトのウェブサイトでも情報が提供されています。
さらに、多くのサードパーティコントロールがNS Basicで利用可能ですので、マイクロソフトのコントロールの代わりに使うこともできます。サードパーティコントロールは、一般的にバグが少なく、多くの追加機能が含まれています。
regsvrce.exe <moduleName>.dllSHELLEXECUTE "open","regsvrce.exe","S309Picture.dll"
NS Basic/CEでは、サードパーティのコントロールを簡単に使えます。Windows CE用に書かれた大抵のActiveXコントロールは動きます。AddObjectステートメント(ハンドブックを参照)を使ってコントロールをプロジェクトに追加してください。
AddObjectの最初の引数はコントロールのClassIDです。これはファイル名とは違います。HKEY_CLASSES_ROOTのWindows CEレジストリにある名前です。この名前はコントロールの作者から得るか、Registry Editor(eMbedded Visual Basicに付属)などのツールを使ってレジストリを見てください。デスクトップ版があるコントロールでも、Windows CE版のClassIDは異なるのが一般的ですので、確認して下さい。
オブジェクトが視覚的なものか、イベントを発生するものの場合、AddObjectの最後の4つの引数を必ず渡さなければなりません。
例えば使いたいActiveXコントロールが、Show/Hide等のメソードやプロパティーを持っていない場合、Frameコントロールの中に入れることにより、このFrameへのメソッドが自動的に中に入っているコントロールにも適用されます。サードパーティのコントロールをFrameの子供にするには、FrameのHWNDを、中に入れるコントロールの"parent HWND"に代入します。しかし、使いたいコントロールが"parent HWND"プロパティーを持たない場合が多々ありますので、その時は以下のように、MGCEWin32コントロールをお使い下さい。
lWnd = API.WindowFromPoint(x,y) ' API as MGCEWin32
lChild = API.GetWindow(lWnd, WINDOWNER)
API.WindowParent(lChild) = Frame.hWnd ' assign frame's hWnd
lChildはMGCEWin32の他の関数の組み合わせでも取得できるかもしれません。
これらはNS Basic/CEで動作が確認されているActiveXコントロールです。これ以外にご存じの方はnipponsupport@nsbasic.comへご連絡下さい。
| ClassID | 説明 | タイプ | ドキュメント |
|---|---|---|---|
| ADOCE.recordset | データベースオブジェクト | Microsoft ActiveX | Tech Note 10 |
| ADOCE.recordset.3.0 | データベースオブジェクト - Pocket PC | Microsoft ActiveX | Tech Note 10 |
| AppLaunch.Launch | ファイルランチャー | Microsoft ActiveX | AppLaunch |
| ASpriteCE.Game | ゲームコントロール | Third Party ActiveX | SpriteHand |
| AWaveCE.Sound | オーディオコントロール | Third Party ActiveX | SpriteHand |
| CFADO.Connection | データベースとの接続 | Third Party ActiveX | ODYSSEY |
| CFADO.Recordset | SQLステートメントからレコードを開く | Third Party ActiveX | ODYSSEY |
| CFFILE.Transfer | デバイスとサーバー間のファイル送信 | Third Party ActiveX | ODYSSEY |
| CEFusion.CfClient2 | CEFusionオブジェクトの低レベル通信 | Third Party ActiveX | ODYSSEY |
| CeDateTime.DateTime | 日付/時間 コントロール | Third Party ActiveX | ComMEDIA |
| CeLocale.Locale | 地域 コントロール | Third Party ActiveX | ComMEDIA |
| CeMCalendar.MCalendar | 月カレンダー コントロール | Third Party ActiveX | ComMEDIA |
| CePopupMenu.PopupMenu | ポップアップメニュー コントロール | Third Party ActiveX | ComMEDIA |
| CeProgressBar.ProgressBar | プログレスバー コントロール | Third Party ActiveX | ComMEDIA |
| CeSettings.Settings | 設定 コントロール | Third Party ActiveX | ComMEDIA |
| CeTrayIcon.TrayIcon | トレイ アイコン コントロール | Third Party ActiveX | ComMEDIA |
| CFMts.Object | 遠隔オブジェクト | Third Party ActiveX | ODYSSEY |
| CfMq.MsgQueue.1 | メッセージ キュー | Third Party ActiveX | ODYSSEY |
| Checkbox | 標準チェックボックス | NSB標準 | ハンドブック参照 |
| Combobox | 標準コンボボックス | NSB標準 | ハンドブック参照 |
| ComboBoxThingo.ComboBoxThing | 拡張コンボボックス | Third Party ActiveX | ComboBoxThingo |
| Comm | シリアル通信 | Microsoft ActiveX | Tech Note 04 |
| CommandButton | 標準コマンドボタン | NSB標準 | ハンドブック参照 |
| Date | 標準日付セレクター | NSB標準 | ハンドブック参照 |
| DataViewer.DataViewer | バーチャル リストビュウ | Third Party ActiveX | ODYSSEY |
| Dialog | 標準ダイアログ | Microsoft ActiveX | Tech Note 08 |
| DialogX | カスタム ダイアログボックス-Rev 3.01以降 | Big Red Toolbox | DialogX |
| EasyInk.InkControl | シグニチャーキャプチャ | Third Party ActiveX | ODYSSEY |
| File | ファイル I/O | Microsoft ActiveX | Tech Note 03 |
| FileSystem | ファイルシステム ファンクション | Microsoft ActiveX | Tech Note 02 |
| Finance | 財務ファンクション | Microsoft ActiveX | Tech Note 11 |
| Frame | オブジェクトを括るフレーム | NSB標準 | ハンドブック参照 (新) |
| Grid | スプレッドシート型インターフェース | Microsoft ActiveX | Tech Note 06 |
| Hscrollbar | 水平スクロールバー | NSB標準 | ハンドブック参照 (新) |
| IDSSAPI.Core | Core API | Third Party ActiveX | IDSSAPI |
| IDSSAPI.Inet | FTP通信 | Third Party ActiveX | IDSSAPI |
| IDSSAPI.Memory | システムメモリーアクセス | Third Party ActiveX | IDSSAPI |
| IDSSAPI.Power | バッテリー情報 | Third Party ActiveX | IDSSAPI |
| IDSSAPI.WindowHelper | ウィンドウヘルパー | Third Party ActiveX | IDSSAPI |
| Image | ImageList, TreeViewヘルパー | Microsoft ActiveX | Tech Note 20 |
| ImageList | イメージのリスト | Microsoft ActiveX | Tech Note 21 |
| InVision.iSignIt | シグニチャーキャプチャ | Third Party ActiveX | inVision |
| InetThingo.InetThing | HTTP通信 | Third Party ActiveX | InetThingo |
| IPWorks.FTP | FTP通信 | Big Red Toolbox | IP*Works |
| IPWorks.HTTP | HTTP通信 | Big Red Toolbox | IP*Works |
| IPWorks.ICMPPort | IPレイヤーへのアクセス | Big Red Toolbox | IP*Works |
| IPWorks.IMAP | IMAP4クライアント | Big Red Toolbox | IP*Works |
| IPWorks.IPDaemon | TCP/IPサーバー | Big Red Toolbox | IP*Works |
| IPWorks.IPInfo | DNSおよび他のデータベース関数 | Big Red Toolbox | IP*Works |
| IPWorks.IPPort | Winsockストリームソケットへのアクセス | Big Red Toolbox | IP*Works |
| IPWorks.LDAP | LDAPディレクトリサーバーへのアクセス | Big Red Toolbox | IP*Works |
| IPWorks.MCast | マルチキャストコントロール | Big Red Toolbox | IP*Works |
| IPWorks.MIME | MIMEエンコード/デコード | Big Red Toolbox | IP*Works |
| IPWorks.MX | ドメインサーバー検索 | Big Red Toolbox | IP*Works |
| IPWorks.NetCode |
UUencode, Base64, Quoted Printable, URL エンコード/デコード |
Big Red Toolbox | IP*Works |
| IPWorks.NetDial | Windows RAS APIアクセス | Big Red Toolbox | IP*Works |
| IPWorks.NNTP | USENET news コントロール | Big Red Toolbox | IP*Works |
| IPWorks.POP | POP3およびPOP2サーバーアクセス | Big Red Toolbox | IP*Works |
| IPWorks.Rexec | rexecプロトコルを使ったリモートコマンド実行 | Big Red Toolbox | IP*Works |
| IPWorks.Rshell | リモートシェルを使ったリモートコマンド実行 | Big Red Toolbox | IP*Works |
| IPWorks.SMTP | メールの送信 | Big Red Toolbox | IP*Works |
| IPWorks.SNMP | SNMPプロトコルへのインターフェース | Big Red Toolbox | IP*Works |
| IPWorks.SNPP | 標準Pagingゲートウェイ | Big Red Toolbox | IP*Works |
| IPWorks.Telnet | Telnetクライアントへのインターフェース | Big Red Toolbox | IP*Works |
| IPWorks.UDPPort | UDPポケット通信へのインターフェース | Big Red Toolbox | IP*Works |
| Label | ラベル | NSB標準 | ハンドブック参照 |
| ListBox | リストボックス | NSB標準 | ハンドブック参照 |
| ListView | アイテム表示 | Microsoft ActiveX | Tech Note 22 |
| MGCEBarsNPops.PopupMenu | ポップアップメニュー | Big Red Toolbox | MGCEBarsNPops |
| MGCEBarsNPops.Progress | 標準Windows CEプログレスバー | Big Red Toolbox | MGCEBarsNPops |
| MGCEBarsNPops.Scrollbar | 標準Windows CEスクロールバー | Big Red Toolbox | MGCEBarsNPops |
| MGCEBarsNPops.StatusBar | Windows CEステータスバーへのアクセス | Big Red Toolbox | MGCEBarsNPops |
| MGCEBarsNPops.Trackbar | 横/縦トラックバー | Big Red Toolbox | MGCEBarsNPops |
| MGCEBarsNPops.VUMeter | 横/縦レベル表示メーター | Big Red Toolbox | MGCEBarsNPops |
| MGCEListView.ListView | リストビュー | Big Red Toolbox | MGCEListView |
| MGCEMail.Mail | メールクライアント | Big Red Toolbox | MGCEMail |
| MGCENet.IPAddress | IPアドレスコントロール | Big Red Toolbox | MGCENet |
| MGCENet.HTML | HTMLコントロール | Big Red Toolbox | MGCENet |
| MGCERichEdit.RichEdit | Rich editコントロール | Big Red Toolbox | MGCERichEdit |
| MGCERichInk.RichInk | Rich ink (scratchpad) コントロール | Big Red Toolbox | MGCERichInk |
| MGCETreeView.TreeView | ツリービュー | Big Red Toolbox | MGCETreeView |
| MGCEWin32.API | Win32 API | Big Red Toolbox | MGCEWin32 |
| MGCEWin32.Tray | システムトレイへのアクセス | Big Red Toolbox | MGCEWin32 |
| MGCEWin32.Registry | Windows CEレジストリアクセス | Big Red Toolbox | MGCEWin32 |
| MGCEWin32.Timer | タイマーイベント | Big Red Toolbox | MGCEWin32 |
| MGCEWin32.RAS | Remote Access APIへのアクセス | Big Red Toolbox | MGCEWin32 |
| Nickellie.NCrypto | 暗号化ツール | Third Party ActiveX | NICKELLIE |
| NSBasic.DialogX.1 | カスタムダイアログボックス | Big Red Toolbox | DialogX |
| OptionButton | ラジオボタン | NSB標準 | ハンドブック参照 |
| OSIUtil.Collection | コレクション オブジェクト | Third Party ActiveX | ODYSSEY |
| OSIUtil.File | ファイル オブジェクト | Third Party ActiveX | ODYSSEY |
| OSIUtil.Registry | レジストリ オブジェクト | Third Party ActiveX | ODYSSEY |
| OSIUtil.Win32 | Win32 オブジェクト | Third Party ActiveX | ODYSSEY |
| Output | 実行時のバックグランド | NSB標準 | ハンドブック参照 |
| PictureBox | ピクチャーとテキスト | Microsoft ActiveX | Tech Note 07 |
| pocketOutlook.application | 標準のコンタクトおよびタスクデータベースへのアクセス | Microsoft ActiveX | Tech Note 19 |
| Pocketsoap.Envelope.2 | SOAPクライアントオブジェクト | Third Party ActiveX | PocketSOAP |
| Pocketsoap.HTTPTransport.2 | SOAPクライアントHTTPオブジェクト | Third Party ActiveX | PocketSOAP |
| PPChart.Chart | 円、線、棒、ストック グラフ | Third Party ActiveX | PPChart |
| PrEngineCE.PrinterCE | 印刷 | Third Party ActiveX | PrinterCE |
| pspcmenubar.menubar.1 | Pocket PC用のMicrosoftメニューバー コントロール | Microsoft ActiveX | MSDN |
| RegistryControl.RegCtl | オーナー情報 | Microsoft ActiveX | OwnerInfo |
| RGridCtrl.Grid | グリッドコントロール | Third Party ActiveX | Resco |
| S309.PictureBox.1 | ピクチャーボックス | Big Red Toolbox | S309PictureBox |
| S309.Timer.1 | タイマーコントロール | Big Red Toolbox | S309Timer |
| S309.UserNotification.1 | User Notificationダイアログボックス | Big Red Toolbox | S309UserNotification |
| TabStrip | タブコントロール | Microsoft ActiveX | Tech Note 09 |
| TextBox | テキスト入力ボックス | NSB標準 | ハンドブック参照 |
| Time | 時間セレクター | NSB標準 | ハンドブック参照 |
| TreeView | ツリービュー | Microsoft ActiveX | Tech Note 23 |
| TriButton | 3つの状態を持つチェックボックス | NSB組込み | ハンドブック参照 (新) |
| vbceCreateProcess.vbceCreateProc | 他のプログラムを実行 | Third Party ActiveX | CEGadgets |
| vbceNLS.vbceNLS | 国際化 | Third Party ActiveX | CEGadgets |
| VbceSoftKeyboard.vbceSoftKeyboard | ソフトキーボード | Third Party ActiveX | CEGadgets |
| vbceTaskbarControl.vbceTaskbarControl | タスクバー | Third Party ActiveX | CEGadgets |
| ViaXML.ViaXMLClient | Webサービス | Third Party ActiveX | ViaXML |
| VscrollBar | 垂直スクロールバー | NSB標準 | ハンドブック参照 (新) |
| Winsock | TCP/IP通信 | Microsoft ActiveX | Tech Note 05 |