我注意到Surface Pro和我相信索尼Vaio Duo 11報告的最大觸摸座標是1366x768,這對我來說是驚人的,因爲它們的原生顯示分辨率是1920x1080。 有誰知道在運行時找出最大觸摸座標是什麼的方法?我在XAML下運行了一個DirectX應用程序,因此我必須將觸摸座標縮放到我自己的世界座標中,如果不知道縮放因子是什麼,我無法做到這一點。爲什麼Surface Pro上的最大X和Y觸摸座標不同於原生顯示分辨率?
這是我參加競選,看起來在觸摸座標代碼:
從DirectXPage.xaml
<Grid PointerPressed="OnPointerPressed"></Grid>
從DirectXPage.xaml.cpp
void DirectXPage::OnPointerPressed(Platform::Object^ sender, Windows::UI::Xaml::Input::PointerRoutedEventArgs^ args)
{
auto pointerPoint = args->GetCurrentPoint(nullptr);
// the x value ranges between 0 and 1366
auto x = pointerPoint->Position.X;
// the y value ranges between 0 and 768
auto y = pointerPoint->Position.Y;
}
而且,這裏是一個示例項目設置,如果在Surface Pro上運行,可以演示此問題: http://andrewgarrison.com/files/TouchTester.zip
謝謝,那正是我正在尋找的。 – 2013-02-28 22:48:14