亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wdxmutsettingsdlg.cs

?? VC中使用C#作為腳本引擎編程
?? CS
?? 第 1 頁 / 共 3 頁
字號:
//--------------------------------------------------------------------------------------
// File: DXMUTSettingsDlg.cs
//
// Dialog for selection of device settings 
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//--------------------------------------------------------------------------------------
using System;
using System.IO;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;

namespace Microsoft.Samples.DirectX.UtilityToolkit
{
    #region Control Ids
    public enum SettingsDialogControlIds
    {
        Static = -1,
        None,
        OK,
        Cancel,
        Adapter,
        DeviceType,
        IsWindowed,
        Fullscreen,
        AdapterFormat,
        AdapterFormatLabel,
        Resolution,
        ResolutionLabel,
        RefreshRate,
        RefreshRateLabel,
        BackBufferFormat,
        DepthStencil,
        MultisampleType,
        MultisampleQuality,
        VertexProcessing,
        PresentInterval,
        DeviceClip,
        RadioButtonGroup = 0x100,
    }
    #endregion

    /// <summary>
    /// Dialog for selection of device settings 
    /// </summary>
    public class SettingsDialog
    {
        #region Creation
        /// <summary>Creates a new settings dialog</summary>
        public SettingsDialog(Framework sample)
        {
            parent = sample;
            windowWidth = Framework.DefaultSizeWidth; windowHeight = Framework.DefaultSizeHeight;
            CreateControls();
        }
        #endregion

        #region Class Data
        private Framework parent; // Parent framework for this dialog
        private Dialog dialog; // Dialog that will be rendered
        private uint windowWidth; // Width of window
        private uint windowHeight; // Height of window
        private DeviceSettings globalSettings; // Device settings
        private StateBlock state; // state block for device
        #endregion

        #region Control variables
        // Combo boxes
        private ComboBox resolution;
        private ComboBox adapterCombo;
        private ComboBox deviceCombo;
        private ComboBox adapterFormatCombo;
        private ComboBox refreshCombo;
        private ComboBox backBufferCombo;
        private ComboBox depthStencilCombo;
        private ComboBox multiSampleTypeCombo;
        private ComboBox multiSampleQualityCombo;
        private ComboBox vertexCombo;
        private ComboBox presentCombo;
        // Check boxes
        private Checkbox clipBox;
        // Radio buttons
        private RadioButton windowedButton;
        private RadioButton fullscreenButton;
        // Static controls that are cared about
        private StaticText adapterFormatStatic;
        private StaticText resolutionStatic;
        private StaticText refreshStatic;
        #endregion

        /// <summary>
        /// Creates the controls for use in the dialog
        /// </summary>
        private void CreateControls()
        {
            dialog = new Dialog(parent);
            dialog.IsUsingKeyboardInput = true;
            dialog.SetFont(0, "Arial", 15, FontWeight.Normal);
            dialog.SetFont(1, "Arial", 28, FontWeight.Bold);

            // Right justify static controls
            Element e = dialog.GetDefaultElement(ControlType.StaticText, 0);
            e.stringFormat = DrawStringFormat.VerticalCenter | DrawStringFormat.Right;

            // Title
            StaticText title = dialog.AddStatic((int)SettingsDialogControlIds.Static, "Direct3D Settings", 10, 5, 400, 50);
            e = title[0];
            e.FontIndex = 1;
            e.stringFormat = DrawStringFormat.Top | DrawStringFormat.Left;

            // Adapter
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Display Adapter", 10, 50, 180, 23);
            adapterCombo = dialog.AddComboBox((int)SettingsDialogControlIds.Adapter, 200, 50, 300, 23);

            // Device Type
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Render Device", 10, 75, 180, 23);
            deviceCombo = dialog.AddComboBox((int)SettingsDialogControlIds.DeviceType, 200, 75, 300, 23);

            // Windowed / Fullscreen
            windowedButton = dialog.AddRadioButton((int)SettingsDialogControlIds.IsWindowed, (int)SettingsDialogControlIds.RadioButtonGroup,
                "Windowed", 240, 105, 300, 16, false);
            clipBox = dialog.AddCheckBox((int)SettingsDialogControlIds.DeviceClip, "Clip to device when window spans across multiple monitors",
                250, 126, 400, 16, false);
            fullscreenButton = dialog.AddRadioButton((int)SettingsDialogControlIds.Fullscreen, (int)SettingsDialogControlIds.RadioButtonGroup, "Full Screen",
                240, 147, 300, 16, false);

            // Adapter Format
            adapterFormatStatic = dialog.AddStatic((int)SettingsDialogControlIds.AdapterFormatLabel, "Adapter Format",
                10, 180, 180, 23);
            adapterFormatCombo = dialog.AddComboBox((int)SettingsDialogControlIds.AdapterFormat, 200, 180, 300, 23);

            // Resolution
            resolutionStatic = dialog.AddStatic((int)SettingsDialogControlIds.ResolutionLabel, "Resolution", 10, 205, 180, 23);
            resolution = dialog.AddComboBox((int)SettingsDialogControlIds.Resolution, 200, 205, 300, 23);
            resolution.SetDropHeight(106);

            // Refresh Rate
            refreshStatic = dialog.AddStatic((int)SettingsDialogControlIds.RefreshRateLabel, "Refresh Rate", 10, 230, 180, 23);
            refreshCombo = dialog.AddComboBox((int)SettingsDialogControlIds.RefreshRate, 200, 230, 300, 23);

            // BackBuffer Format
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Back Buffer Format", 10, 265, 180, 23);
            backBufferCombo = dialog.AddComboBox((int)SettingsDialogControlIds.BackBufferFormat, 200, 265, 300, 23);

            // Depth Stencil
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Depth/Stencil Format", 10, 290, 180, 23);
            depthStencilCombo = dialog.AddComboBox((int)SettingsDialogControlIds.DepthStencil, 200, 290, 300, 23);

            // Multisample Type
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Multisample Type", 10, 315, 180, 23);
            multiSampleTypeCombo = dialog.AddComboBox((int)SettingsDialogControlIds.MultisampleType, 200, 315, 300, 23);

            // Multisample Quality
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Multisample Quality", 10, 340, 180, 23);
            multiSampleQualityCombo = dialog.AddComboBox((int)SettingsDialogControlIds.MultisampleQuality, 200, 340, 300, 23);

            // Vertex Processing
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Vertex Processing", 10, 365, 180, 23);
            vertexCombo = dialog.AddComboBox((int)SettingsDialogControlIds.VertexProcessing, 200, 365, 300, 23);

            // Present Interval
            dialog.AddStatic((int)SettingsDialogControlIds.Static, "Present Interval", 10, 390, 180, 23);
            presentCombo = dialog.AddComboBox((int)SettingsDialogControlIds.PresentInterval, 200, 390, 300, 23);

            // Add the ok/cancel buttons
            Button okButton = dialog.AddButton((int)SettingsDialogControlIds.OK, "OK", 230, 435, 73, 31);
            Button cancelButton = dialog.AddButton((int)SettingsDialogControlIds.Cancel, "Cancel", 315, 435, 73, 31, 0, true);
            okButton.Click += new EventHandler(OnOkClicked);
            cancelButton.Click += new EventHandler(OnCancelClicked);
        }

        /// <summary>Changes the UI defaults to the current device settings</summary>
        public void Refresh()
        {
            // Get some information
            globalSettings = parent.DeviceSettings.Clone();
            System.Drawing.Rectangle client = parent.WindowClientRectangle;
            windowWidth = (uint)client.Width;
            windowHeight = (uint)client.Height;

            // Fill the UI with the current settings
            if (!deviceCombo.ContainsItem(globalSettings.DeviceType.ToString()))
                deviceCombo.AddItem(globalSettings.DeviceType.ToString(), globalSettings.DeviceType.ToString());

            SetWindowed(globalSettings.presentParams.IsWindowed);
            clipBox.IsChecked = ((globalSettings.presentParams.PresentFlag & PresentFlag.DeviceClip) != 0);

            if (!adapterFormatCombo.ContainsItem(globalSettings.AdapterFormat.ToString()))
                adapterFormatCombo.AddItem(globalSettings.AdapterFormat.ToString(), globalSettings.AdapterFormat);

            AddResolution((short)globalSettings.presentParams.BackBufferWidth, (short)globalSettings.presentParams.BackBufferHeight);
            AddRefreshRate(globalSettings.presentParams.FullScreenRefreshRateInHz);

            if (!backBufferCombo.ContainsItem(globalSettings.presentParams.BackBufferFormat.ToString()))
                backBufferCombo.AddItem(globalSettings.presentParams.BackBufferFormat.ToString(), globalSettings.presentParams.BackBufferFormat);

            if (!depthStencilCombo.ContainsItem(globalSettings.presentParams.AutoDepthStencilFormat.ToString()))
                depthStencilCombo.AddItem(globalSettings.presentParams.AutoDepthStencilFormat.ToString(), globalSettings.presentParams.AutoDepthStencilFormat);

            if (!multiSampleTypeCombo.ContainsItem(globalSettings.presentParams.MultiSampleType.ToString()))
                multiSampleTypeCombo.AddItem(globalSettings.presentParams.MultiSampleType.ToString(), globalSettings.presentParams.MultiSampleType);

            if (!multiSampleQualityCombo.ContainsItem(globalSettings.presentParams.MultiSampleQuality.ToString()))
                multiSampleQualityCombo.AddItem(globalSettings.presentParams.MultiSampleQuality.ToString(), globalSettings.presentParams.MultiSampleQuality);

            if (!presentCombo.ContainsItem(globalSettings.presentParams.PresentationInterval.ToString()))
                presentCombo.AddItem(globalSettings.presentParams.PresentationInterval.ToString(), globalSettings.presentParams.PresentationInterval);

            BehaviorFlags flags = new BehaviorFlags(globalSettings.BehaviorFlags);
            if (flags.PureDevice)
                AddVertexProcessing(CreateFlags.PureDevice);
            else if (flags.HardwareVertexProcessing)
                AddVertexProcessing(CreateFlags.HardwareVertexProcessing);
            else if (flags.SoftwareVertexProcessing)
                AddVertexProcessing(CreateFlags.SoftwareVertexProcessing);
            else if (flags.MixedVertexProcessing)
                AddVertexProcessing(CreateFlags.MixedVertexProcessing);

            // Get the adapters list from Enumeration object
            List<EnumAdapterInformation> adapterInfoList = Enumeration.AdapterInformationList;

            if (adapterInfoList.Count == 0)
                throw new NoCompatibleDevicesException();

            adapterCombo.Clear();

            // Add all of the adapters
            for (int iAdapter = 0; iAdapter < adapterInfoList.Count; iAdapter++)
            {
                EnumAdapterInformation adapterInfo = adapterInfoList[iAdapter] as EnumAdapterInformation;
                if (!adapterCombo.ContainsItem(adapterInfo.UniqueDescription))
                    adapterCombo.AddItem(adapterInfo.UniqueDescription, iAdapter);
            }
            adapterCombo.SetSelectedByData(globalSettings.AdapterOrdinal);

            // The adapter changed, call the handler
            OnAdapterChanged(adapterCombo, EventArgs.Empty);

            Dialog.SetRefreshTime((float)FrameworkTimer.GetTime());
        }

        /// <summary>Render the dialog</summary>
        public void OnRender(float elapsedTime)
        {
            state.Capture();
            parent.Device.RenderState.FillMode = FillMode.Solid;
            dialog.OnRender(elapsedTime);
            state.Apply();
        }

        /// <summary>Hand messages off to dialog</summary>
        public void HandleMessages(IntPtr hWnd, NativeMethods.WindowMessage msg, IntPtr wParam, IntPtr lParam)
        {
            dialog.MessageProc(hWnd, msg, wParam, lParam);
        }
        #region Device event callbacks
        /// <summary>
        /// Called when the device is created
        /// </summary>
        public void OnCreateDevice(Device d)
        {
            // Hook all the events we care about
            resolution.Changed += new EventHandler(OnResolutionChanged);
            adapterCombo.Changed += new EventHandler(OnAdapterChanged);
            deviceCombo.Changed += new EventHandler(OnDeviceChanged);
            adapterFormatCombo.Changed += new EventHandler(OnAdapterFormatChange);
            refreshCombo.Changed += new EventHandler(OnRefreshRateChanged);
            backBufferCombo.Changed += new EventHandler(OnBackBufferChanged);
            depthStencilCombo.Changed += new EventHandler(OnDepthStencilChanged);
            multiSampleTypeCombo.Changed += new EventHandler(OnMultisampleTypeChanged);
            multiSampleQualityCombo.Changed += new EventHandler(OnMultisampleQualityChanged);
            vertexCombo.Changed += new EventHandler(OnVertexProcessingChanged);
            presentCombo.Changed += new EventHandler(OnPresentIntervalChanged);
            clipBox.Changed += new EventHandler(OnClipWindowChanged);
            windowedButton.Changed += new EventHandler(OnWindowedFullscreenChanged);
            fullscreenButton.Changed += new EventHandler(OnWindowedFullscreenChanged);
        }

        /// <summary>
        /// Called when the device is reset
        /// </summary>
        public void OnResetDevice()
        {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91福利小视频| 国产丝袜美腿一区二区三区| 一区二区免费在线播放| 成人免费观看av| 日本一区二区三区电影| 日本伊人精品一区二区三区观看方式| 一本大道综合伊人精品热热| 亚洲三级小视频| 91美女福利视频| 亚洲视频网在线直播| 97精品国产97久久久久久久久久久久 | 国产精品123| 久久人人爽爽爽人久久久| 亚洲成在线观看| 欧美群妇大交群中文字幕| 亚洲aaa精品| 在线观看成人免费视频| 亚洲国产欧美另类丝袜| 欧美精品一二三四| 日本欧美加勒比视频| 91精品国产综合久久精品性色| 日韩国产欧美视频| 精品成人一区二区三区| 国产二区国产一区在线观看| 国产精品视频麻豆| www.亚洲精品| 亚洲国产欧美另类丝袜| 日韩欧美一区二区视频| 国产最新精品精品你懂的| 国产亚洲va综合人人澡精品| 成人黄色大片在线观看| 亚洲图片有声小说| 精品日韩99亚洲| 波多野结衣中文字幕一区二区三区| 中文字幕一区二区三| 91亚洲午夜精品久久久久久| 亚洲成人在线观看视频| 久久综合九色综合欧美亚洲| www.日本不卡| 青娱乐精品在线视频| 精品国产伦一区二区三区观看体验| 秋霞av亚洲一区二区三| 欧美经典一区二区三区| 欧美日韩精品一区二区天天拍小说 | 风流少妇一区二区| 亚洲综合视频在线| 国产亚洲一区二区三区| 日本道色综合久久| 久久99精品国产| 亚洲精品一二三区| 久久午夜电影网| 欧洲中文字幕精品| 国产精品综合视频| 亚洲在线成人精品| 日韩免费一区二区三区在线播放| 国产夫妻精品视频| 蜜桃视频一区二区三区在线观看| 一区二区国产盗摄色噜噜| 国产欧美一区二区在线观看| 日韩精品中文字幕一区二区三区| 欧美视频一区在线观看| 99久久精品免费看国产| 国产成人av一区二区三区在线| 青青国产91久久久久久 | 天堂一区二区在线免费观看| 国产精品电影一区二区三区| 国产偷国产偷亚洲高清人白洁| 精品国产免费人成在线观看| 91精品国产麻豆| 欧美精品1区2区| 91精品国产综合久久久久久久| 欧美影视一区在线| 欧美体内she精视频| 欧美在线免费观看亚洲| 91成人免费网站| 欧美综合在线视频| 欧美日韩国产一级片| 欧美日韩中文字幕一区二区| 日本高清视频一区二区| 欧美在线一区二区三区| 欧美亚洲尤物久久| 7799精品视频| 日韩视频免费观看高清完整版 | 伊人色综合久久天天人手人婷| 中文字幕综合网| 亚洲男同性视频| 一区二区三区中文在线| 亚洲福利国产精品| 欧美aⅴ一区二区三区视频| 蜜臀精品一区二区三区在线观看| 精品一区免费av| 国产传媒欧美日韩成人| 欧美人妖巨大在线| 欧美成人一级视频| 中文字幕不卡的av| 亚洲精品国产a| 日韩精品电影一区亚洲| 国产精品自拍毛片| 91女人视频在线观看| 欧美日韩一区二区电影| 欧美成人一区二区三区在线观看| 久久精品亚洲麻豆av一区二区| 国产精品亲子乱子伦xxxx裸| 一区二区三区在线看| 蜜臀av性久久久久蜜臀av麻豆| 国产毛片精品国产一区二区三区| 99re这里只有精品首页| 欧美日韩国产小视频在线观看| 欧美不卡一区二区| 亚洲视频免费在线观看| 日韩电影免费在线| 国产成人免费xxxxxxxx| 欧美日韩中文另类| 国产日韩精品一区二区三区| 亚洲激情一二三区| 激情综合色丁香一区二区| 成人av在线影院| 91精品国产aⅴ一区二区| 国产精品伦一区二区三级视频| 亚洲成av人片观看| 成人综合婷婷国产精品久久 | 91精品国产黑色紧身裤美女| 欧美国产精品劲爆| 日日摸夜夜添夜夜添国产精品| 国产精品1区2区| 欧美日韩视频在线第一区| 久久精品欧美一区二区三区不卡| 一区二区三区在线观看国产| 国产乱人伦精品一区二区在线观看 | 国产性色一区二区| 天天色图综合网| 99久久久久免费精品国产| 日韩视频免费直播| 亚洲影视资源网| 波多野结衣欧美| 久久久久久97三级| 免费人成精品欧美精品| 欧美在线一二三四区| 国产精品第一页第二页第三页| 紧缚捆绑精品一区二区| 欧美少妇bbb| 亚洲精品第一国产综合野| 国产乱妇无码大片在线观看| 欧美日韩国产成人在线免费| 亚洲欧洲日韩综合一区二区| 国产乱码精品一区二区三区av| 欧美精品色一区二区三区| 国产精品成人免费精品自在线观看 | 色综合久久久久综合体桃花网| 久久亚洲综合色| 免费亚洲电影在线| 欧美乱妇一区二区三区不卡视频| 国产精品久久久久久久久免费丝袜 | 一区二区久久久久| 97久久精品人人爽人人爽蜜臀| 日本一区二区视频在线| 狠狠色狠狠色综合| 精品日韩在线观看| 美女精品自拍一二三四| 欧美一区国产二区| 天天操天天综合网| 欧美卡1卡2卡| 丝瓜av网站精品一区二区| 欧美日韩国产影片| 婷婷激情综合网| 欧美一区二区三区啪啪| 日韩av电影免费观看高清完整版 | 一个色综合av| 欧美综合色免费| 一区二区三区在线免费视频| 欧美自拍偷拍一区| 亚洲国产日韩一级| 欧美一区二区美女| 久久国产精品色婷婷| 2022国产精品视频| 国产黑丝在线一区二区三区| 国产精品天干天干在观线| 成人午夜视频在线观看| 1区2区3区欧美| 欧美三区在线视频| 日韩精品91亚洲二区在线观看| 欧美一区二区三区免费在线看| 久久97超碰色| 欧美国产欧美综合| 91在线视频播放| 午夜精品aaa| 精品国内片67194| 国产成人免费在线观看| 亚洲欧洲av色图| 91精品久久久久久久91蜜桃| 国产在线视频精品一区| 国产精品嫩草久久久久| 在线观看日韩av先锋影音电影院| 日韩和欧美一区二区三区| 欧美不卡一区二区三区| 成人精品鲁一区一区二区| 亚洲人成在线观看一区二区| 欧美另类videos死尸| 国产激情视频一区二区在线观看| 亚洲美女免费在线|