Поделиться через


OSFeature.IsPresent(SystemParameter) Метод

Определение

Извлекает значение, указывающее, поддерживает ли операционная система указанную функцию или метрику.

public:
 static bool IsPresent(System::Windows::Forms::SystemParameter enumVal);
public static bool IsPresent(System.Windows.Forms.SystemParameter enumVal);
static member IsPresent : System.Windows.Forms.SystemParameter -> bool
Public Shared Function IsPresent (enumVal As SystemParameter) As Boolean

Параметры

enumVal
SystemParameter

Объект SystemParameter , представляющий функцию для поиска.

Возвращаемое значение

Значение в противном случае .

Примеры

В следующем примере кода показано, как использовать IsPresent метод с SystemParameter перечислением. В примере определяется, поддерживает ли операционная система метрику CaretWidth перед вызовом SystemInformation.CaretWidth свойства.

#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::ComponentModel;
using namespace System::Windows::Forms;
using System;
using System.Drawing;
using System.ComponentModel;
using System.Windows.Forms;
Imports System.Drawing
Imports System.ComponentModel
Imports System.Windows.Forms
// Gets the caret width based upon the operating system or default value.
int GetCaretWidth()
{
   // Check to see if the operating system supports the caret width metric. 
   if ( OSFeature::Feature->IsPresent( SystemParameter::CaretWidthMetric ) )
   {
      // If the operating system supports this metric,
      // return the value for the caret width metric. 
      return SystemInformation::CaretWidth;
   }
   else
         1;

   // If the operating system does not support this metric,
   // return a custom default value for the caret width.
}
// Gets the caret width based upon the operating system or default value.
private int GetCaretWidth ()
{    

    // Check to see if the operating system supports the caret width metric. 
    if (OSFeature.IsPresent(SystemParameter.CaretWidthMetric))
    {

        // If the operating system supports this metric,
        // return the value for the caret width metric. 

        return SystemInformation.CaretWidth;
    } else
    {

        // If the operating system does not support this metric,
        // return a custom default value for the caret width.

        return 1;
    }
}
' Gets the caret width based upon the operating system or default value.
Private Function GetCaretWidth() As Integer

    ' Check to see if the operating system supports the caret width metric. 
    If OSFeature.IsPresent(SystemParameter.CaretWidthMetric) Then

        ' If the operating system supports this metric,
        ' return the value for the caret width metric. 

        Return SystemInformation.CaretWidth
    Else

        ' If the operating system does not support this metric,
        ' return a custom default value for the caret width.

        Return 1
    End If
End Function

Комментарии

Как правило, метод используется IsPresent для определения того, поддерживает ли операционная система определенную функцию или метрику, определяемую .enumValue В зависимости от возвращаемого IsPresentзначения в коде будут выполняться условные действия. Например, при вызове этого метода со значением параметра возвращаемого FlatMenutrueзначения можно создать в приложении нарисованные владельцем меню в неструктурированном стиле.

Доступ к некоторым системным функциям или метрикам может вызвать исключения, если они недоступны в определенной версии операционной системы. В этом случае сначала используйте соответствующее SystemParameter значение перечисления вместе с IsPresentтем, чтобы определить, поддерживается ли метрика. Например, вызов с CaretWidth именем IsPresent перед получением SystemInformation.CaretWidth значения свойства.

Применяется к

См. также раздел