VCL.form / FMX.formの違い

 なぞのエラーの原因がこれポイ。

Appplication.handler

Application.icon

のメンバーではないとかあったから。

embed-vcl-form-in-fmx-form

私たちが取り組んでいるメインのプログラムは、完全にVCLで設計されており、非常に大きく、一部は約20年前のものです。次のバージョンでは、UWPガイドラインとタッチコントロールを考慮した、よりモダンなUIになる予定です。

VCL は FireMonkey と互換性がない

注意: FireMonkey(FMX)ビジュアル コンポーネント ライブラリ(VCL)は互換性がないため、同じモジュール内で一緒に使用してはなりません。 つまり、FireMonkey か VCL のどちらか一方だけのモジュールでなければなりません。 この非互換性は、FireMonkey(FMX)と VCL とのフレームワークの違いに起因するものです。

ただし、以下のことは可能です。

  • FireMonkey ライブラリを VCL アプリケーションで使用したり、VCL ライブラリを FireMonkey アプリケーションで使用すること(「OS X の共有ライブラリ」参照)。
  • VCL アプリケーションを FireMonkey アプリケーションに変換するための一般的なガイドラインを「VCL から FireMonkey への変換」で参照すること
  • VCL アプリケーションを FireMonkey アプリケーションに移行するための一般的な手順を「VCL アプリケーションから FireMonkey への移行」で参照すること
  • VCL から FireMonkey への変換プログラムを、http://midaconverter.com/ から取得する

Delphiのfunctionは返り値voidできなくね?

vcl / fmx の互換性を担保できん。

 Delphi Basics : これの邦訳とか・需要なさそうwww


procedure TApplication.CreateMainForm;

var

  I: Integer;

begin

  if not Assigned(FMainForm) then

  begin

    if FFormRegistry.Keys.Count = 1 then

    begin

      for I := 0 to High(FCreateForms) do

        if (not FCreateForms[I].InstanceClass.InheritsFrom(TDataModule)) then

        begin

          FMainForm := TCommonCustomForm(FCreateForms[I].Reference^);

          break;

        end

    end

    else

      FMainForm := GetDeviceForm(FMainFormFamily);

    TMessageManager.DefaultManager.SendMessage(FMainForm, TMainCaptionChangedMessage.Create(FMainForm));

  end;


  if Assigned(FMainForm) then

    FMainForm.Visible := True;

end;


FMX.forms.CreateMainForm直後に落ちるなぁ。


https://www.blackcat.xyz/article.php/ProgramingFAQ_del0045

今回はそんなときに使える 「タスクバーにタスク表示させない」 方法です。


この方法は、アプリケーションのウィンドウ設定を変更します。

アプリケーションのウィンドウを非表示に(元々見えていません)する。

アプリケーションウィンドウの拡張設定の WS_EX_TOOLWINDOW というフラグをたてる。


この方法はプロジェクトのソースに対し修正を行います。

デルファイの開発環境でプロジェクトマネージャを表示します。

次にプロジェクトを選択、右クリックポップアップメニューを表示します。

ソースの表示をクリックすると表示されます。

実際のコードは以下のようになります。(斜体部分のみ入力します。)

->消えたは消えた。けど別のエラー

access violation at addressが発生。メモリ系??

ふぁ?

Next Post Previous Post
No Comment
Add Comment
comment url