サイト内検索

検索

Shares

Table of Content

86HMI::FileBrowser(ファイルブラウザ)

[メニューウィジェット]

オブジェクト関数

FileBrowserオブジェクト

FileBrowser-1

FileBrowserは、ファイルを選択するために使用されるコンポーネントです。
API を通じて表示するディスクを設定し、選択されたファイルパスをユーザーによる後続の処理のために読み取ることができます。

注記:

  • FileBrowserは英語のファイル名のみをサポートします。
  • パスの最大長は 1024文字です。
  • 最大128個のファイル/フォルダを表示します。

FileBrowserのプロパティ

FileBrowser-2

Identifier (Identifier (識別子)):

  • ID: オブジェクトを識別する一意の番号
  • Name: オブジェクトのユーザー定義可能な名前。86HMI APIで使用できます。

Geometry (Geometry (形状)):

  • X: オブジェクトのX座標
  • Y: オブジェクトのY座標
  • Width: オブジェクトの幅
  • Height: オブジェクトの高さ

オプション:

  • Spacing: 各オプション間の行間隔は次のとおりです:
    1. 最小
    2. 小さい
    3. 通常
    4. 大きい
FileBrowser-3
  • TextFont: 6つのデフォルトのフォントスタイルから選択します。フォントの設定手順については、テーマ管理を参照ください。
  • ObjColor: 4つのテーマカラーから選択します。フォントの設定手順については、テーマ管理を参照ください。
  • Enable: オブジェクトのデフォルト状態を有効化または無効化を選択します。
  • Order: オブジェクトの順序。オブジェクトリストに表示されるオブジェクトの順序を上下に調整できます。

API Functions

setFileBrowserFilter()

説明

FileBrowserオブジェクトフィルタを設定します。
次のルールがあります:

  • 「?」は、任意の1文字に一致します。
  • 「*」は、任意の文字の任意の回数(ゼロ回を含む)に一致します。

例えば:

  • *.txt は、.txt で終わるすべてのファイル名と一致します。
  • ???.txt は、ファイル名が .txt で終わる3文字のファイルと一致します。

一致するワイルド・カード:

FileBrowser-4

構文

void setFileBrowserFilter(lv_obj_t* id, char* filter, int filterIndex);
void setFileBrowserFilter(char* name, char* filter, int filterIndex);
void setFileBrowserFilter(lv_obj_t* id, char* filter);
void setFileBrowserFilter(char* name, char* filter);

媒介変数

  • [in] id
    オブジェクトID
  • [in] name
    オブジェクト名
  • [in] char* filter
    フィルタのコンテンツ
  • [in] int filterIndex
    フィルタのインデックス

戻り値

なし

#include "myhmi.h"

void setup() {
  Hmi.begin();
  // ...
  Hmi.setFileBrowserFilter(p1fb1, "a");
}

void loop() {
  // ...
}

deleteFileBrowserFilter()

説明

FileBrowserオブジェクトのフィルタを削除します。

構文

void deleteFileBrowserFilter(lv_obj_t* id, int filterIndex);
void deleteFileBrowserFilter(char* name, int filterIndex);
void deleteFileBrowserFilter(lv_obj_t* id);
void deleteFileBrowserFilter(char* name);

媒介変数

  • [in] id
    オブジェクトID
  • [in] name
    オブジェクト名
  • [in] int filterIndex
    フィルタのインデックス

戻り値

なし

#include "myhmi.h"

void setup() {
  Hmi.begin();
  // ...
  Hmi.setFileBrowserFilter(p1fb1, "a");

  delay(1000);
  Hmi.deleteFileBrowserFilter(p1fb1);
}

void loop() {
  // ...
}

setFileBrowserDisk()

説明

FileBrowserオブジェクトのディスクを選択します。

構文

void setFileBrowserDisk(lv_obj_t* id, int disk);
void setFileBrowserDisk(char* name, int disk);

媒介変数

  • [in] id
    オブジェクトID
  • [in] name
    オブジェクト名
  • [in] int disk
    ディスクの選択

戻り値

なし

#include "myhmi.h"

void setup() {
  Hmi.begin();
  // ...
  Hmi.setFileBrowserDisk(p1fb1, USBDISK);
}

void loop() {
  // HMI event
  BEGIN_HMI_EVENT_PROC
  {
    // USB
    if (Hmi.buttonClicked(p1b1))
    {
      Hmi.importToTextList(p1tl1, Hmi.getFileBrowserFilePath(p1fb1), USBDISK);
    }
    if (Hmi.buttonClicked(p1b2))
    {
      Hmi.clearTextList(p1tl1);
    }
  }
  END_HMI_EVENT_PROC
  delay(100);
}

getFileBrowserFolder()

説明

FileBrowserオブジェクトのフォルダを取得します。

構文

char* getFileBrowserFolder(lv_obj_t* id);
char* getFileBrowserFolder(char* name);

媒介変数

  • [in] id
    オブジェクトID
  • [in] name
    オブジェクト名

戻り値

FileBrowserオブジェクトのフォルダを返します。

#include "myhmi.h"

void setup() {
  Serial.begin(115200);
  while (!Serial);
  
  Hmi.begin();
  // ...
  Serial.println(Hmi.getFileBrowserFolder(p1fb1));
}

void loop() {
  // ...
}

getFileBrowserFilePath()

説明

FileBrowserオブジェクトのファイルへのパスを取得します。

構文

char* getFileBrowserFilePath(lv_obj_t* id);
char* getFileBrowserFilePath(char* name);

媒介変数

  • [in] id
    オブジェクトID
  • [in] name
    オブジェクト名

戻り値

FileBrowserオブジェクトのファイルへのパスを返します。

#include "myhmi.h"

void setup() {
  Hmi.begin();
  // ...
  Hmi.setFileBrowserDisk(p1fb1, USBDISK);
}

void loop() {
  // HMI event
  BEGIN_HMI_EVENT_PROC
  {
    // USB
    if (Hmi.buttonClicked(p1b1))
    {
      Hmi.importToTextList(p1tl1, Hmi.getFileBrowserFilePath(p1fb1), USBDISK);
    }
    if (Hmi.buttonClicked(p1b2))
    {
      Hmi.clearTextList(p1tl1);
    }
  }
  END_HMI_EVENT_PROC
  delay(100);
}

詳細は 86HMIエディタ ユーザーマニュアル には、86HMI ウィジェットとAPIのさらなる説明がございます。

上部へスクロール