ヒント

サブフォームを簡単に扱うためのクラス

4D フォーラムで、フォームの前景にメッセージ、砂時計、またはいくつかのインターフェース要素を表示し、背景をぼかすことについてのリクエスト、ヒント、または質問がいくつかありました。サブフォームや CALL FORM を使えば、そのようなインターフェースを作ることができます。複数ページのフォームを扱う場合、コードが複雑になることがあります。

そこで、複数ページのフォームに表示されるサブフォームの管理を簡単にするクラスを Vincent De Lachaux が用意いたしました。このクラスは、サブフォームを読み込んだり、ワーカーから制御したり、メインフォームのサイズが変更された場合にサブフォームの位置を変更したりします。このような仕組みを気にすることなく、ダイアログに集中することができます。

ヒント blank

4Dアプリケーションのためのヒントとコツ – 8月版

Deeplからの自動翻訳

by Add Komoncharoensiri, Director of Technical Services at 4D Inc.

さて、今回もまた新たなヒントをご紹介します。

ご存知のように、4Dナレッジベースは、4Dテクノロジーに関する情報を集めたライブラリーで、毎週技術的なヒントと毎月のテクノートが活発に公開されています。もし、前回のナレッジベースでのヒントを見逃したとしても、大丈夫です。

このブログでは、16のTipsを紹介しています。

製品 blank

フォームとサブフォームの通信を簡単に

4D v19 R5 より、サブフォームに変数を関連付けることができるようになり、フォームとサブフォーム間のコミュニケーションとインターフェースの可能性が豊かになりました。通信手段は、2つの新しいコマンドによって簡素化されました: OBJECT Get subform container valueOBJECT SET SUBFORM CONTAINER VALUE

ゲストポスト blank

リストボックスのタイプアヘッド。直感的なリスト検索

Deeplからの自動翻訳

カナダ出身の4D開発者、Chris Belangerがゲスト執筆しました。

リストボックスのタイプアヘッド (漸進的に検索する方法)は、リストボックスのネイティブ機能ではありません。しかし、工夫次第でこの機能を簡単に実装することができます。このブログ記事では、データベースの例と、ステップごとに詳細を説明する徹底的なドキュメントとともに、このテクニックを紹介します。

最終的な結果は、以下のGIFにまとめられています。一つはE-L-L-I-O-Tで、もう一つは(列のソートをした後)H-A-N-N-A-Hである。

未分類
製品
blank

オンリサイズ… オンリサイズ… オンリサイズ… オンリサイズ…

Deeplからの自動翻訳

美しくダイナミックなユーザーインターフェースを作成するにはどうしたらよいか、悩んでいませんか?通常、フォームのサイズが変更されると、水平サイズや 垂直サイズのプロパティが移動または拡大に設定されているフォームオブジェクトは、自動的にサイズが変更されます。場合によっては(例えば、より細かいユーザーインターフェースの管理)、開発者はフォームオブジェクトのサイズと位置をプログラミングで管理することを選択します。そのためには、フォームメソッド内で発生する “on resized” イベントをチェックします。しかし、フォームに一つ以上のサブフォームが含まれている場合はどうなるのでしょうか?何階層にもわたって?このブログの記事がその答えを教えてくれます。

製品 blank

フォーム間のデータの受け渡し

Deeplからの自動翻訳

フォームを開いてパラメータを渡すだけで、フォームオブジェクトを初期化することができたら、素晴らしいと思いませんか?4D v16 R5 は、フォームとの通信を大幅に簡略化することで、あなたのコーディングをとても簡単にしてくれます。

今までは、複数のユーザーにデータ(データベース自体から来るものではなく、計算されたものや外部からのもの)を表示したい場合、複数のプロセスでデータ表示を処理する複雑なコードを書くか、たくさんのグローバル変数を使って必要なだけフォームを作成するかの2つの選択肢がありました。しかし、グローバル変数がメモリの観点から最適化されたコーディング方法でないことはご存知の通りです。

そこで、複雑なコードとグローバル変数から解放されましょう!4D v16 R5 では、オブジェクトをフォームにバインドし、新しい Form コマンドでそれを内部的に使用することができます。簡単で…そして強力です!