歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Visual Studio 11:使用 C++ 開發一個最簡單的 Metro 應用

Visual Studio 11:使用 C++ 開發一個最簡單的 Metro 應用

日期:2017/3/1 10:19:56   编辑:Linux編程

Visual Studio 11 消費者預覽版支持使用 C++ 創建 Metro 風格的應用程序,這對廣大本地應用開發者來說是一個大消息。這裡我們來創建一個非常簡單的 Metro 應用。

啟動 Visual Studio 並通過 Visual C++>Windows Metro Style>Blank Application 模板創建一個項目.

“Hello world”

打開 BlankPage.xaml 文件,滾動到代碼底部並定位 Grid 元素,然後插入一個 TextBlock,代碼如下:

1 <Grid Background="{StaticResource ApplicationPageBackgroundBrush}"> 2 <TextBlock Text="Hello world" Margin="12,20" Style="{StaticResource SubheaderTextStyle}"/> 3 </Grid>

Margin 屬性是文本離邊界之間的距離值,這裡我們設置左邊距離 12px,頂部距離 20px。你也可以修改 FontSize 屬性值來改變字體大小。

如果你現在運行應用程序,那將會是一個黑屏上顯示 Hello world 文本在左上角。你可以通過 BlankPage.xaml 來定義應用的 UI 外觀,但代碼邏輯存放在 BlankPage.xaml.hBlankPage.xaml.cpp 文件中,這兩個文件和 BlankPage.xaml 放在同一個目錄。

這是一個普通的 C++ 類,但有所不同,有一些新的擴展語法,成為 C++/CX,意思是 Component extensions. 純 C++ 不能用於開發 Metro 應用,但使用純 WinRT 會讓代碼變得很笨重,因為 Metro 世界所有都是 COM 對象。C++/CX 擴展可以讓 C++ 程序員無需了解太多非標准的擴展。通過 AddRef 和 Release 的調用可隱藏更多的技術細節。

C++ to XAML

你可以通過添加 x:Name="txtHello" 來為在 XAML 定義的 TextBlock 取個名字,並可設置值。然後你就可以使用如下代碼來操作該文本元素。將下面代碼添加到 BlankPage::OnNavigatedTo 方法:

1 txtHello->Text = "Hello world!!!";

運行程序,你將看到如下圖所示的結果:


雖然上述例子並不值得太激動,不過想想你當時學習 Win32、MFC 和 WTL 開發,這已經是非常簡單了。

Copyright © Linux教程網 All Rights Reserved