v19はUniversal Binaryアプリです。つまり,IntelとApple Silicon,両方のアーキテクチャに対応しています。M1搭載Macでv19を起動した場合,Apple Siliconアーキテクチャの実行ファイルが優先的にロードされます。アプリは,ストラクチャファイルを選択する前に起動するため,バイナリモードの.4DBファイルを開いたとしても,デザインモードはApple Siliconアーキテクチャで動作することになります。
デザインモードがApple Siliconで動作している場合,バイナリモードのストラクチャをコンパイルしようとすると,エラーが返されます。
デザインモードをIntelアーキテクチャで起動するためには,アプリを右クリックし,Finderの「情報を見る」メニューを選択して「Rosettaを使用して開く」チェックボックスを有効にする必要があります。
ストラクチャエディターには,カスタム背景イメージを設定することができます。これは,使用中のデータファイルがテスト用なのか本番用なのかをデザインモードで容易に区別するためのメカニズムです。カスタム背景イメージは,ストラクチャファイルではなくデータファイルに背景イメージが保存されます。プロジェクトモードでも背景イメージはカスタマイズすることができますが,データファイルを除外してプロジェクトをGitなどのリポジトリに置いた場合,カスタム背景イメージ画像はバージョン管理の対象とはならないことに留意する必要があります。
64ビット版のクリックレポートエリア(%report
)は,従来のようなプラグインエリアではなく,標準的なウィジェット(サブフォーム)です。そのため,ウィジェットに共通の制限が適用されます。たとえば,コンテナオブジェクトが配置されたフォームのページを切り替えた場合,サブフォーム内のオブジェクトはOn Unloadイベントを処理することになります。クイックレポートエリアの場合,これは表示中のレポートが破棄されることを意味します。これは仕様です。ページを切り替えてもレポートが残るようにしたい場合,エリアをページ0
に配置するか,オブジェクトの表示と非表示を切り替えることにより,疑似的なページ切り替えを表現する必要があります。
セレクション型リストボックスのハイライトセットには,ローカルセット($
接頭辞)を使用することが強く推奨されています。19r3では,リストボックスの描画が全般的に最適化されました。その一方で,プロセスセットが設定されているリストボックスをスクロールしたときの反応は,19r2との比較で非常に遅いかもしれません。これは仕様です。19r3では,サーバーをインタープリターモードで開始した場合,これまでプリエンプティブスレッドで実行されていたランゲージ処理がリモートデバッガでデバッグできるようになりました。リモートデバッガがアタッチ(有効化)されている場合,コードがコオペラティブスレッドで実行されるだけでなく,クライアント/サーバー間で同期が取られるプロセスセットを表示するため頻繁にネットワークリクエストが発生することになります。つまり,コンパイルモードに切り替えるか,リモートデバッガを無効化すれば,リストボックスをスクロールしたときの反応は以前のバージョンと同じ速度に戻ります。
無駄なネットワークトラフィックを発生させないため,ハイライトセットにプロセスセット名が入力されている場合,ローカルセットに変更することを検討してください。
バイナリモードに「フィールド」タイプのフォームオブジェクトが存在し,ブール型フィールドは,ラジオボタンのペアまたは単一のチェックボックスとして表示されました。そのようなフォームをプロジェクトに変換した場合,ストラクチャのフィールドプロパティが「表示のみ」であれば,入力可プロパティがデフォルトで無効に設定されたチェックボックス,そうでなければ,有効に設定されたチェックボックスに変換されます。プロパティは,OBJECT SET ENTERABLE
で設定することもできます。
入力不可チェックボックスは,disabledとは少し違います。disabled状態のボタンはオブジェクトがグレーアウト表示されるのに対し,「表示のみ」ブール型フィールドを想定した入力不可チェックボックスは,クリック操作に反応しないものの,グレーアウト表示はされません。これは仕様です。
プロジェクトモードでは,バイナリモードのフィールドや変数とは違い,個々のテキスト入力オブジェクトに「フォーカス可」というプロパティは存在しません。オブジェクトは暗黙的にフォーカス可となります。OBJECT SET ENTERABLE
コマンドで入力不可に設定した場合,オブジェクトは引き続きフォーカス可であり,テキストを選択することができます。バイナリモードでは,入力不可オブジェクトをフォーカス不可にすることができました。
フォーカス可のオブジェクトにはタブ操作で移動することができます。入力不可オブジェクトにタブ移動させたくない場合,オブジェクトを入力順から除外する必要があります。プロジェクトモードでは,バイナリモードとは違い,個々のオブジェクトに「タブ移動可」というプロパティは存在しません。オブジェクトを入力順から除外するには,フォームエディターの入力順ツールを使用し,shiftキーを押しながらオブジェクトをクリックするか,コンテキストメニューで「入力順から削除する」を使用してください。