Visual Studio 2017 UWP ウィンドウ半透明表示 C++版
Rectangleを半透明にしてウィンドウ壁紙を半透明表示させます。
<Rectangle Fill="Transparent" Name="Rectangle1" Loaded="Rectangle1_Loaded"></Rectangle>
using namespace Windows::UI::Composition; public ref class MainPage sealed { Compositor^ _Compositor; SpriteVisual^ _SpriteVisual; public: MainPage(); private: void Rectangle1_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e); };
#include <WindowsNumerics.h> MainPage::MainPage() { InitializeComponent(); _Compositor = Windows::UI::Xaml::Hosting::ElementCompositionPreview::GetElementVisual(this)->Compositor; _SpriteVisual = _Compositor->CreateSpriteVisual(); } void cpp_uwp::MainPage::Rectangle1_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) { _SpriteVisual->Size = Windows::Foundation::Numerics::float2{ (float)Rectangle1->ActualWidth,(float)Rectangle1->ActualHeight }; Windows::UI::Xaml::Hosting::ElementCompositionPreview::SetElementChildVisual(Rectangle1, _SpriteVisual); _SpriteVisual->Brush = _Compositor->CreateHostBackdropBrush(); }
Windows::Foundation::Numerics::float2()
を利用するためにWindowsNumerics.h
をインクルードする。