Gamepad Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili gamepad.
public ref class Gamepad sealed
public ref class Gamepad sealed : IGameControllerBatteryInfo
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Gamepad final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Gamepad final : IGameControllerBatteryInfo
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Gamepad
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Gamepad : IGameControllerBatteryInfo
Public NotInheritable Class Gamepad
Public NotInheritable Class Gamepad
Implements IGameControllerBatteryInfo
- Warisan
- Atribut
- Penerapan
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Contoh
Cuplikan kode berikut menunjukkan cara mengulang daftar Gamepad.Gamepads dan menambahkan masing-masing ke vektor. Anda harus mengunci vektor, karena hal-hal dapat berubah kapan saja (pengontrol mungkin terputus atau terhubung kembali, misalnya).
#include <concrt.h>
#include <winrt/Windows.Gaming.Input.h>
using namespace winrt;
using namespace Windows::Gaming::Input;
...
std::vector<Gamepad> myGamepads;
concurrency::critical_section myLock{};
for (auto const& gamepad : Gamepad::Gamepads())
{
// Test whether the gamepad is already in myGamepads; if it isn't, add it.
concurrency::critical_section::scoped_lock lock{ myLock };
auto it{ std::find(begin(myGamepads), end(myGamepads), gamepad) };
if (it == end(myGamepads))
{
// This code assumes that you're interested in all gamepads.
myGamepads.push_back(gamepad);
}
}
auto myGamepads = ref new Vector<Gamepad^>();
critical_section myLock{};
for (auto gamepad : Gamepad::Gamepads)
{
// Test whether the gamepad is already in myGamepads; if it isn't, add it.
critical_section::scoped_lock lock{ myLock };
auto it = std::find(begin(myGamepads), end(myGamepads), gamepad);
if (it == end(myGamepads))
{
// This code assumes that you're interested in all gamepads.
myGamepads->Append(gamepad);
}
}
Keterangan
Instans kelas Gamepad tidak dapat dibuat secara langsung; sebaliknya, instans kelas Gamepad diambil melalui properti Gamepad.Gamepads yang mencantumkan semua gamepad yang terhubung atau melalui peristiwa Gamepad.GamepadAdded .
Perangkat yang Didukung
Gamepad mendukung GIP (Gaming Input Protocol) atau gamepad yang kompatibel dengan XUSB.
Riwayat versi
Versi Windows | Versi SDK | Nilai ditambahkan |
---|---|---|
1607 | 14393 | GetButtonLabel |
1703 | 15063 | FromGameController |
1703 | 15063 | TryGetBatteryReport |
Properti
Gamepads |
Daftar semua gamepad yang terhubung. |
Headset |
Headset audio melekat pada gamepad. |
IsWireless |
Mendapatkan nilai yang menunjukkan status nirkabel gamepad. |
User |
Pengguna yang terkait dengan gamepad. |
Vibration |
Menjelaskan kecepatan motor gamepad. |
Metode
FromGameController(IGameController) |
Mengembalikan pengontrol game yang diberikan sebagai gamepad. |
GetButtonLabel(GamepadButtons) |
Mengambil label tombol untuk tombol yang ditentukan. |
GetCurrentReading() |
Mendapatkan rekam jepret status gamepad. |
TryGetBatteryReport() |
Mendapatkan informasi tentang status baterai gamepad saat ini. |
Acara
GamepadAdded |
Memberi sinyal ketika gamepad baru terhubung. |
GamepadRemoved |
Sinyal ketika gamepad terputus. |
HeadsetConnected |
Memberi sinyal ketika headset melekat pada gamepad. |
HeadsetDisconnected |
Memberi sinyal ketika headset terputus dari gamepad. |
UserChanged |
Sinyal ketika pengguna yang terkait dengan gamepad telah berubah. |