MATLABを使用すると、最初のAPPデザイナープログラム(電子辞書)を作成できます。

注:左上隅にアイコンを追加する方法
ここに画像の説明を挿入します
は、記事の最後にあります。元の記事は次のとおりです。


今日やりたいのは簡単な電子辞書です。効果は次のとおりです。
ここに画像の説明を挿入します

ここに画像の説明を挿入します
参考記事:独自の電子辞書が必要ですか?MATLABを使用して電子辞書を作成するためのチュートリアル

1アプリの作成

ゼロファンデーションなので。まず、APPデザイナを開く方法から始める必要があり
ます。新しいアプリプログラム(mlappファイル拡張子)を作成する場合は、新しい→作成するアプリを作成できます(すでにmlappファイルが作成されている場合は、ファイルをダブルクリックして):
ここに画像の説明を挿入します

その後、我々はファイルを作成するために、新しい空白のAppを作成することを選択した後。
ここに画像の説明を挿入します
ファイル名を指定して実行]をクリックし、アプリ名はここで変更することができます:
ここに画像の説明を挿入します

2コントロールの作成とプロパティの設定

2.1背景

コンポーネントマネージャーでコンポーネントをクリックしてプロパティを設定します。
ここに画像の説明を挿入します
右側のプロパティを編集すると、中央にコードが自動的に生成され、それに応じて左側のアプリの表示ボックスが変わります
ここに画像の説明を挿入します
。このアプリの場合、UIfigureは次のようになります。次のように変更されました。

  • 背景色を変更する(色)
  • 初期位置を変更する(位置)
  • アプリのサイズは自由に調整できません(サイズ変更)
  • アプリインターフェースの左上隅にある名前を変更します(名前)

ここに画像の説明を挿入します
ここに画像の説明を挿入します

2.2タグ(辞書の説明)

ドラッグして他のコンポーネントを作成
します。使用時にテキスト領域を編集する必要がないため、タスクを完了するために使用できるのはラベルのみです。
ここに画像の説明を挿入します
ドラッグアンドドロップして位置とサイズを変更するか、属性修飾子を使用して入力できます。値はその位置とサイズを変更しますが、位置を除いて、変更する必要がある最終的な属性は次のとおりです。

  • ラベルテキスト(テキスト)
  • テキスト中心(Horizo​​ntalAlognment)
  • フォントサイズ(FontSize)
  • テキストフォント(FontName)
  • 太字のテキスト(FontWetght)
  • テキストの色(FontColor)

ここに画像の説明を挿入します

2.3入力ボックスとクエリボタン

入力ボックスは編集可能なテキストボックスを使用し、左側のラベルはDeleteで削除できます。
ここに画像の説明を挿入します
簡単にするために、ボタンと入力ボックスにはあまり多くの属性が設定されていません。
ここに画像の説明を挿入します

2.4クエリ結果ボックス

これはテキスト表示ボックスでもありますが、コピーの便宜のために、ラベルコンポーネントの代わりにテキスト領域のTextAreaコンポーネントが使用されます。
テキスト領域を作成した、編集可能をキャンセルして、引き続きコピーできるようにすることをお勧めします、ただし、APPの外部でコンテンツを変更することはできません。
ここに画像の説明を挿入します

単語検索の3つの原則

単語を検索すると、Youdao Dictionaryがリンクにジャンプすることがわかりました。リンクには検索された語彙が含まれています。
ここに画像の説明を挿入します
実際、別の語彙を検索すると、リンクは中央の小さなセクションのみを変更します。検索用語が異なる場合は、訪問するリンクは次のとおりです。

url = ['http://www.youdao.com/w/' search_word '/#keyfrom = dict2.top'];

search_wordは検索する語彙です。リンクを取得し
たらurlread(url)を直接使用してHTMLページのコンテンツを取得します。取得の形式は次のとおりです。<div class = "trans-container"の
ここに画像の説明を挿入します
間にコンテンツが見つかりました
。 >と</ ul>それが必要なので、regexpi関数を使用してコンテンツのこの部分を見つけて抽出するだけで済みます。ここに画像の説明を挿入します
コードのこの部分は次のとおりです(APPバージョンに変換されていません)。

function search_result=search(search_word)
        url=['http://www.youdao.com/w/' search_word '/#keyfrom=dict2.top'];
        complete_code=urlread(url);
        trans=regexpi(complete_code,'<div class="trans-container">');
        trans=trans(1);
        if ~isempty(trans)
            trans_end1=regexpi(complete_code,'</ul>');
            trans_end1(trans_end1<trans)=[];
            trans_end1=trans_end1(1);
            temp_data=complete_code(trans:trans_end1-1);
            delete_pos=regexpi(temp_data,'<li>');
            delete_pos=delete_pos(1);
            temp_data(1:delete_pos+3)=[];
            control=1;
            while(control)
                control=0;
                delete_li_pos=regexpi(temp_data,'<li>');
                if ~isempty(delete_li_pos)
                    delete_li_pos=delete_li_pos(1);
                    temp_data(delete_li_pos:delete_li_pos+3)=[];
                end
                delete_li_pos=regexpi(temp_data,'<li>');
                if ~isempty(delete_li_pos)
                    control=1;
                end
            end
            control=1;
            while(control)
                control=0;
                delete_li_pos=regexpi(temp_data,'</li>');
                if ~isempty(delete_li_pos)
                    delete_li_pos=delete_li_pos(1);
                    temp_data(delete_li_pos:delete_li_pos+4)=[];
                end
                delete_li_pos=regexpi(temp_data,'</li>');
                if ~isempty(delete_li_pos)
                    control=1;
                end
            end
            search_result=temp_data;
            
        end
    end

4ボタンのコールバック

ボタンを押すだけで入力ボックスのコンテンツをクエリしたいので、クエリボタンにコールバック関数を追加する必要があります。
ここに画像の説明を挿入します
コールバック関数では、最初に入力ボックスのテキストを取得する必要があります。
ここに画像の説明を挿入します
単語クエリをコピーします。コードの一部であり、結果を[結果]ボックスに表示します。
ここに画像の説明を挿入します

コード部分が完成しました!


################################################## ################################################## ######################################

5APPのパッケージ化とインストール

ここをクリックしてパッケージングインターフェイスに入ります。
ここに画像の説明を挿入します
新しく書き込んだmlappファイルをメインファイルとして選択し、名前を変更します。インストール中
に図示すように、アイコンの下に名前が表示されます。
ここに画像の説明を挿入します
ここで回転し続ける場合は、さらにいくつかクリックします。ただし
ここに画像の説明を挿入します
、今回のプログラムでは、自分で作成した他の関数や画像を呼び出さなかったため、共有リソースやヘルプファイルに入力する必要はありません。

5.1インストールパッケージカバー

インストールパッケージのカバーは右側で選択できます(選択されているかどうかは関係ありません)。ここに画像の説明を挿入します
たとえば、カラーエクストラクタインストールパッケージのカバーは次のようになります。
ここに画像の説明を挿入します

5.2説明

入力された説明は、次の場所に表示されます。
ここに画像の説明を挿入します
ここに画像の説明を挿入します

5.3アイコン

ソフトウェア表示アイコンはここで変更でき
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ます:自分で作成したいくつかのアイコン:
ここに画像の説明を挿入します


上記のプロパティを設定したら、[パッケージ]をクリックしてパッケージ化を開始できます。mlappinstallファイルが生成されると、パッケージ化は終了します。

5.4APPのインストール

mlappinstallを選択すると、次のようにアプリをインストールでき
ここに画像の説明を挿入します
ますインストールの効果は次のとおりです。
ここに画像の説明を挿入します
インストールが完了したら、アイコンをクリックして直接使用できます。現在、アプリのソースファイルを使用することはできません。パスを指定しないと、エラーが発生します。
現在のファイルのクリップを変更して解決できます。


また、
APPデザイナーの魔法の操作についてもっと知りたい場合は、以下の記事を読むことができます。

この記事に示されているmlappとインストールパッケージファイル:https://download.csdn.net/download/slandarer/15565335


もう1つ:
左上隅にアイコンを追加する方法左上隅にアイコンを追加するには、

  1. まず、ico形式の画像を準備します。ブラウザでico形式に変換する画像をたくさん見つけることができます。
  2. mlappファイルと同じフォルダにico形式の画像を配置します
  3. mlappファイルのstartupFcnコールバックを作成します(startupFcnコールバックの作成方法がわからない場合は、開始に関する私のブログを読むことができます)
  4. startupFcnに次のコードを入力します(コードに表示されている場所の画像名とuifigure名を変更します。
%% 更改APP Designer LOGO图标
warning('off');
% 获取当前工程绝对路径(含工程名)
icopath=mfilename('fullpath');
% 查找最后一个斜杆的位置
i=findstr(icopath,'\');
% 去除工程文件名,得到路径
icopath=icopath(1:i(end));
% 加入logo图标文件名
icopath = [icopath,'这里写上ico文件的名字'];
rez = [];
	 while ~strcmp(rez,icopath)
     	try
        % 获取webwindow句柄
        win = struct(struct(struct(struct(app).这里写上UIfigure的名字).Controller).PlatformHost).CEF;
        % 指定LOGO文件路径
        win.Icon=icopath;
        rez = win.Icon;
        catch
        % 给图形(网页)更多时间加载
        pause(1);
        end
end

このようにして、左上隅のアイコンを追加できます
ここに画像の説明を挿入します
コードのこの部分は、Matlab App Designerから取得されます。左上隅のmatlabアイコンを独自のロゴに変更するにはどうすればよいですか?問題の説明の下でのAmygseの返信

おすすめ

転載: blog.csdn.net/slandarer/article/details/108591667