如何在Ubuntu Scope中定義設定變數並讀取

2021-06-26 07:52:13 字數 3377 閱讀 8892

我們首先開啟sdk,並選擇「unity scope」模版。我們選擇乙個專案的名稱為「settingscope」:

接下來,我們選擇「empty scope」。這樣我們就建立了我們的乙個最基本的scope了。

首先,我們開啟專案中的「data」資料夾,並建立乙個如下的檔名:

com.ubuntu.developer.liu-xiao-guo.settingscope_settingscope-settings.ini
注意這個檔名和scope的設定檔案

com.ubuntu.developer.liu-xiao-guo.settingscope_settingscope.ini
只有細小的差別。只是在它的後面加上「-settings"即可。記住千萬不要改變這個規則。注意這個檔名和專案的名稱的不同而不同

為了能夠對這個檔案進行設定和安裝,我們也同時需要對「data」目錄下的「cmakelists.txt」檔案加入如下的內容:

configure_file(

"com.ubuntu.developer.liu-xiao-guo.settingscope_settingscope-settings.ini"

"$/src/com.ubuntu.developer.liu-xiao-guo.settingscope_settingscope-settings.ini"

)install(

files "$/src/com.ubuntu.developer.liu-xiao-guo.settingscope_settingscope-settings.ini"

destination "$"

)

這樣我們的設定檔案就可以安裝到目標中了。下面,我們可以對我們的設定檔案進行配置。開啟我們的設定檔案:

[location]
type

=string

defaultvalue

=london

displayname

=location

[distanceunit]
type

=list

defaultvalue

=1

displayname

=distance

unit

displayname

[de]

=entfernungseinheit

displayvalues

=kilometers;miles

displayvalues

[de]

=kilometer;meilen

[age]
type

=number

defaultvalue

=23

displayname

=age

[enabled]
type

=boolean

defaultvalue

=true

displayname

=enabled

#

setting

without

adefault

value

[color]
type

=string

displayname

=color

[limit]
type

=number

defaultvalue

=20

displayname

=搜尋條數

在這裡,我們定義了一些設定的名稱,比如「location」。它被定義為「string」,同時它還有乙個預設的值「london」。顯示的提示為「location」,當然我們也可以把它修改為「位置」(對中文而言)。

為了能夠在應用中訪問我們,我們可以修改我們的**如下:

void query::run(sc::searchreplyproxy const& reply)  else 

// register a category

auto cat = reply->register_category("results", "results", "",

sc::categoryrenderer(category_template));

for (const auto &result : results)

}} catch (domain_error &e)

}void query::initscope()

這裡「initscope」在「run」中被呼叫。在initscope中,我們通過「settings()」來讀取設定的值。為了顯示的方便,我們在「run」中,也對讀取的值進行簡單的顯示:

// res.set_title(result.title);

res.set_title( m_location );

res["subtitle"] = std::to_string(m_limit);

我們重新執行我們的scope,並可以看到如下的:

怎樣在Ubuntu Scope中定義設定變數並讀取

我們首先開啟sdk。並選擇 unity scope 模版。我們選擇乙個專案的名稱為 settingscope 接下來,我們選擇 empty scope 這樣我們就建立了我們的乙個最主要的scope了。首先,我們開啟專案中的 data 目錄。並建立乙個例如以下的檔名稱 com.ubuntu.devel...

如何在程式中延時

方法一 使用sleep函式,如延時2秒,用sleep 2000 方法二 使用sleep函式的不利在於延時期間不能處理其他的訊息,如果時間太長,就好象宕機一樣,利用coledatetime類和coledatetimespan類實現延時就不會出現那樣的問題 coledatetime start time...

如何在jupyter notebook中顯示目錄?

如何在jupyter notebook中顯示目錄?通過目錄,能很清楚看到文字的構架。下面就介紹jupyter notebook安裝目錄外掛程式的步驟。1.首先,在anaconda prompt anaconda3 裡執行 pip install jupyter contrib nbextension...