Webエリアのプログラムによる管理

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 11.2


このテーマのコマンドは、Webエリアタイプのフォームオブジェクトをプログラミングによって管理するために使用します。

WebエリアはあらゆるタイプのWebコンテンツを4D環境で表示します。静止画や動画を含むHTMLページ、ファイル、ピクチャ、Javascript、Flash、PDFそしてMS Officeドキュメント (MS OfficeがインストールされているWindowsのみ) などです。以下のピクチャはフォームに格納されているWebエリアで、HTMLページを表示しています。

Webエリアテーマのコマンドに加え、いくつかの標準アクションやフォームイベントを使用して、デベロッパはこれらのWebエリアの機能をコントロールすることができます。特定の変数を用いると、エリアと4D環境の間での情報交換が可能となります。つまり、これらのツールを利用すると、フォーム上にベーシックなWebブラウザを構築することができるのです。

Webエリアを作成して接続する


Webエリアは、4Dフォームエディタのオブジェクトバーにあるプラグインエリア/サブフォームボタンに追加された新しい項目を使用して作成されています (詳細は Design Reference マニュアルを参照してください) 。

他の動的なフォームオブジェクトのように、Webエリアはオブジェクト名と変数名を持ちます。これらはWebエリアをプログラミングによって処理する際に使用されます。 Webエリアオブジェクトに割り当てられる標準変数はテキストタイプです。すなわちWebエリアに対して、 SET VISIBLE コマンドと MOVE OBJECT コマンドを使用することができます。

Note: Webエリアに関連するテキスト変数は参照を格納していません。そのため、メソッドの引数として渡すことはできません。例えば、MyArea という名前のWebエリアに対して、以下のコードを使用することはできません。

   Mymethod(MyArea)

Mymethodコード

   WA REFRESH CURRENT URL($1) `動作しない

このタイプのプログラミングに対しては、ポインタを使用する必要があります。

   Mymethod(->MyArea)

Mymethodコード

   WA REFRESH CURRENT URL($1->) `動作する

コンポジットモード (Mac OS)

Web エリアを表示させるためには、エリアを"コンポジットモード" のウィンドウに置かなければなりません。Mac OS のこの内部的なウィンドウ処理モードは、すべての4D ウィンドウで使用されているわけではありません。

4D v11 SQL では、"コンポジットモード" のウィンドウは:

・コンポジットモードのタイプを持つ Open window コマンドと Open form window コマンドによって作成されたウィンドウ (定数値4096)

・デザインモードでプロジェクトフォームを表示するウィンドウ

Note: 特定の前世代のオブジェクトはコンポジットモードと互換がありません (例えば4D Chart エリア)。このようなオブジェクトがコンポジットモードのウィンドウに表示されると、オブジェクトは動作しません。

割り当てられる変数を管理する


標準的なオブジェクト変数に加え (前述の項目を参照) 、指定された2つの変数が、自動的にそれぞれのWebエリアに割り当てられます。

・URL変数

・進捗変数

これらの変数は、デフォルトでWebエリア_url と Webエリア_progressという名前がそれぞれに付けられます。必要であれば、これらの名前を変更することも可能です。これらの変数はプロパティリストからアクセスできます。

URL変数

URL変数は文字列タイプです。この変数にはWeb エリアにロードされたURL またはロード中のURL が格納されます。

変数とWeb エリア間の連携は双方向で行われます。

・ユーザが新しいURL を変数に割り当てると、このURL は自動でWeb エリアにロードされます。

・Web エリアでブラウズが行われると、自動で変数の内容が更新されます。

このエリアはブラウザのアドレスバーのように機能します。Web エリアの上側にテキストエリアを置いて、内容を表示させることができます。

URL 変数とWA OPEN URL コマンド

URL 変数は WA OPEN URL コマンドと同じ効果をもたらします。しかしながら以下の違いに注意してください。

・ドキュメントにアクセスする場合、この変数はRFC 準拠 ("file://c:/My%20Doc") なURL のみを受け付け、システムパス名 ("c:\MyDoc") は受け付けません。WA OPEN URL コマンドは両方の記法を受け付けます。

・URL 変数が空の文字列の場合、Web エリアはURL をロードしません。WA OPEN URL コマンドはこの場合エラーを生成します。

・URL 変数にプロトコル (http, mailto, file など) を含まない場合、Web エリアは"http://" を付加します。WA OPEN URL コマンドは付加しません。

・Web エリアがフォーム上で表示されていない場合 ( フォームの他のページにWeb エリアがある場合等)、WA OPEN URL コマンドを実行しても効果はありません。一方、URL 変数に値を代入すると、カレントのURL が更新されます。

進捗変数

進捗変数は倍長整数タイプです。この変数には0 から100 までの値が格納され、この数値はWeb エリアに表示されるページのロードされたパーセンテージを表します。この変数は4D が自動で更新します。手動で変更することはできません。

フォームイベント


特定のフォームイベントは、Webエリアをプログラミングで管理するこを目的としています。すなわち、リンクの起動に関連しています。

On Begin URL Loading

On URL Resource Loading

On End URL Loading

On URL Loading Error

On URL Filtering

On Open External Link

On Window Opening Denied

更に、Webエリアは以下の汎用フォームイベントをサポートしています。

・On Load

On Unload

On Getting Focus

On Losing Focus

On Drag Over

On Drop

On Begin Drag Over

これらのイベントに関する詳細は、Form event コマンドの記述を参照してください。

Webエリアの使用に関する注意


ユーザインタフェース

フォームが実行されると、他のフォームエリアと対話することを可能にする、標準のブラウザインタフェース機能がWeb エリア中で利用可能になります。

編集メニューコマンド: Web エリアにフォーカスがあるとき、選択された内容に基づき、編集メニューコマンドを使用してコピーやペースト、すべてを選択などのアクションを実行できます。

・コンテキストメニュー: Web エリアで、システムの標準コンテキストメニューを使用できます (コンテキストメニューの表示はWA SET PREFERENCE コマンドを使用してコントロールできます) 。

・ドラッグ&ドロップ: 4D のオブジェクトプロパティに基づき、ユーザはWeb エリア上で、またはWeb エリアと4D フォームオブジェクト間で、テキストやピクチャ、ドキュメントをドラッグ&ドロップできます。

MS Officeドキュメント (Windows)

Windows では、Web エリアを使用して、Microsoft Office ドキュメントを表示したり、編集したりできます (Microsoft Offic e がマシンにインストールされている場合)。特にWord、Excel、Powerpoint ドキュメントなど (.doc、.xls、.ppt などの拡張子) を処理できます。MS Offic e XMLフォーマットもサポートされています。

Note: MS Office 2007 はデフォルトでWeb ブラウザでのドキュメントの表示を許可していません。ドキュメントは常に新規ウィンドウに表示されます。以下のアドレスで説明されている方法で、この動作を変更できます。

http://support.microsoft.com/kb/162059/en-us

最後に、Windows では、Web エリアを使用して、ローカルや外部のフォルダを表示できます (ftp:// プロトコルやネットワークパス名\\myserver\myvolume を使用して)。

WebエリアとWebサーバのコンフリクト (Windows)

Windows では、Web エリアから、同じ4D アプリケーションで起動されているWeb サーバへのアクセスはお勧めできません。これを行うとコンフリクトが発生し、アプリケーションがフリーズすることがあります。もちろん他の4D から4D Server のWeb エリアにアクセスすることはできます。自身のWeb サーバにアクセスできないということです。

プロトコルの挿入 (Mac OS)

Mac OS 上のWeb エリアで、プログラムにより処理されるURL はプロトコルで開始されていなければなりません。つまり"www.mysite.com" ではなく"http://www.mysite.com" 文字列を渡さなければならないということです。


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次