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


Console.Beep Метод

Определение

Воспроизводит звуковой сигнал через динамик консоли.

Перегрузки

Beep()

Воспроизводит звуковой сигнал через динамик консоли.

Beep(Int32, Int32)

Воспроизводит звуковой сигнал заданной частоты и длительности через динамик консоли.

Beep()

Исходный код:
Console.cs
Исходный код:
Console.cs
Исходный код:
Console.cs

Воспроизводит звуковой сигнал через динамик консоли.

public:
 static void Beep();
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static void Beep ();
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public static void Beep ();
public static void Beep ();
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member Beep : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
static member Beep : unit -> unit
static member Beep : unit -> unit
Public Shared Sub Beep ()
Атрибуты

Исключения

Этот метод выполнен на сервере, например SQL Server, который не разрешает доступ к интерфейсу пользователя.

Примеры

В следующем примере демонстрируется Beep метод. В этом примере в качестве аргумента командной строки принимается число от 1 до 9 и воспроизводится звуковой сигнал.

// This example demonstrates the Console.Beep() method.
using namespace System;
int main()
{
   array<String^>^args = Environment::GetCommandLineArgs();
   int x = 0;
   
   //
   if ( (args->Length == 2) && (Int32::TryParse( args[ 1 ],  x ) == true) && ((x >= 1) && (x <= 9)) )
   {
      for ( int i = 1; i <= x; i++ )
      {
         Console::WriteLine( "Beep number {0}.", i );
         Console::Beep();

      }
   }
   else
      Console::WriteLine( "Usage: Enter the number of times (between 1 and 9) to beep." );
}

/*
This example produces the following results:

>beep
Usage: Enter the number of times (between 1 and 9) to beep

>beep 9
Beep number 1.
Beep number 2.
Beep number 3.
Beep number 4.
Beep number 5.
Beep number 6.
Beep number 7.
Beep number 8.
Beep number 9.

*/
// This example demonstrates the Console.Beep() method.
using System;

class Sample
{
    public static void Main(String[] args)
    {
    int x = 0;
//
    if ((args.Length == 1) &&
        (Int32.TryParse(args[0], out x) == true) &&
        ((x >= 1) && (x <= 9)))
        {
        for (int i = 1; i <= x; i++)
            {
            Console.WriteLine("Beep number {0}.", i);
            Console.Beep();
            }
        }
    else
        {
            Console.WriteLine("Usage: Enter the number of times (between 1 and 9) to beep.");
        }
    }
}
/*
This example produces the following results:

>beep
Usage: Enter the number of times (between 1 and 9) to beep

>beep 9
Beep number 1.
Beep number 2.
Beep number 3.
Beep number 4.
Beep number 5.
Beep number 6.
Beep number 7.
Beep number 8.
Beep number 9.

*/
// This example demonstrates the Console.Beep() method.
open System

[<EntryPoint>]
let main args =
    if args.Length = 1 then
        match Int32.TryParse args[0] with
        | true, x when x >= 1 && x <= 9 ->
            for i = 1 to x do
                Console.WriteLine $"Beep number {i}."
                Console.Beep()
        | _ ->
            Console.WriteLine "Usage: Enter the number of times (between 1 and 9) to beep." 
    else
        Console.WriteLine "Usage: Enter the number of times (between 1 and 9) to beep."

    0

// This example produces the following results:

// >beep
// Usage: Enter the number of times (between 1 and 9) to beep

// >beep 9
// Beep number 1.
// Beep number 2.
// Beep number 3.
// Beep number 4.
// Beep number 5.
// Beep number 6.
// Beep number 7.
// Beep number 8.
// Beep number 9.
' This example demonstrates the Console.Beep() method.
Class Sample
   Public Shared Sub Main(args() As String)
      Dim x As Integer = 0
      Dim i As Integer
      '
      If      (args.Length = 1) _
      AndAlso (Int32.TryParse(args(0), x) = True) _
      AndAlso ((x >= 1) AndAlso (x <= 9)) Then
         For i = 1 To x
            Console.WriteLine("Beep number {0}.", i)
            Console.Beep()
         Next i
      Else
         Console.WriteLine("Usage: Enter the number of times (between 1 and 9) to beep.")
      End If
   End Sub
End Class
'
'This example produces the following results:
'
'>beep
'Usage: Enter the number of times (between 1 and 9) to beep
'
'>beep 9
'Beep number 1.
'Beep number 2.
'Beep number 3.
'Beep number 4.
'Beep number 5.
'Beep number 6.
'Beep number 7.
'Beep number 8.
'Beep number 9.
'

Комментарии

По умолчанию звуковой сигнал воспроизводится с частотой 800 гц в течение 200 миллисекунд.

Beep заключает в оболочку вызов функции Windows Beep. Создает ли Beep звук в версиях Windows до Windows 7, зависит от наличия программируемой микросхемы таймера с интервалом 8254. Начиная с Windows 7, он зависит от звукового устройства по умолчанию.

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

Beep(Int32, Int32)

Исходный код:
Console.cs
Исходный код:
Console.cs
Исходный код:
Console.cs

Воспроизводит звуковой сигнал заданной частоты и длительности через динамик консоли.

public:
 static void Beep(int frequency, int duration);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static void Beep (int frequency, int duration);
public static void Beep (int frequency, int duration);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member Beep : int * int -> unit
static member Beep : int * int -> unit
Public Shared Sub Beep (frequency As Integer, duration As Integer)

Параметры

frequency
Int32

Частота сигнала в диапазоне от 37 до 32767 Гц.

duration
Int32

Длительность сигнала в миллисекундах.

Атрибуты

Исключения

frequency меньше 37 или больше 32767 Гц.

-или-

duration меньше или равно нулю.

Этот метод выполнен на сервере, например SQL Server, который не разрешает доступ к консоли.

Текущая операционная система не является системой Windows.

Примеры

В этом примере демонстрируется Beep метод воспроизведения первых нескольких нот песни через динамик консоли.

// This example demonstrates the Console.Beep(Int32, Int32) method
using namespace System;
using namespace System::Threading;
ref class Sample
{
protected:

   // Define the frequencies of notes in an octave, as well as 
   // silence (rest).
   enum class Tone
   {
      REST = 0,
      GbelowC = 196,
      A = 220,
      Asharp = 233,
      B = 247,
      C = 262,
      Csharp = 277,
      D = 294,
      Dsharp = 311,
      E = 330,
      F = 349,
      Fsharp = 370,
      G = 392,
      Gsharp = 415
   };


   // Define the duration of a note in units of milliseconds.
   enum class Duration
   {
      WHOLE = 1600,
      HALF = Duration::WHOLE / 2,
      QUARTER = Duration::HALF / 2,
      EIGHTH = Duration::QUARTER / 2,
      SIXTEENTH = Duration::EIGHTH / 2
   };


public:

   // Define a note as a frequency (tone) and the amount of 
   // time (duration) the note plays.
   value struct Note
   {
   public:
      Tone toneVal;
      Duration durVal;

      // Define a constructor to create a specific note.
      Note( Tone frequency, Duration time )
      {
         toneVal = frequency;
         durVal = time;
      }


      property Tone NoteTone 
      {

         // Define properties to return the note's tone and duration.
         Tone get()
         {
            return toneVal;
         }

      }

      property Duration NoteDuration 
      {
         Duration get()
         {
            return durVal;
         }

      }

   };


protected:

   // Play the notes in a song.
   static void Play( array<Note>^ tune )
   {
      System::Collections::IEnumerator^ myEnum = tune->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         Note n =  *safe_cast<Note ^>(myEnum->Current);
         if ( n.NoteTone == Tone::REST )
                  Thread::Sleep( (int)n.NoteDuration );
         else
                  Console::Beep( (int)n.NoteTone, (int)n.NoteDuration );
      }
   }


public:
   static void Main()
   {
      
      // Declare the first few notes of the song, "Mary Had A Little Lamb".
      array<Note>^ Mary = {Note( Tone::B, Duration::QUARTER ),Note( Tone::A, Duration::QUARTER ),Note( Tone::GbelowC, Duration::QUARTER ),Note( Tone::A, Duration::QUARTER ),Note( Tone::B, Duration::QUARTER ),Note( Tone::B, Duration::QUARTER ),Note( Tone::B, Duration::HALF ),Note( Tone::A, Duration::QUARTER ),Note( Tone::A, Duration::QUARTER ),Note( Tone::A, Duration::HALF ),Note( Tone::B, Duration::QUARTER ),Note( Tone::D, Duration::QUARTER ),Note( Tone::D, Duration::HALF )};
      
      // Play the song
      Play( Mary );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

This example plays the first few notes of "Mary Had A Little Lamb" 
through the console speaker.
*/
// This example demonstrates the Console.Beep(Int32, Int32) method
using System;
using System.Threading;

class Sample
{
    public static void Main()
    {
// Declare the first few notes of the song, "Mary Had A Little Lamb".
    Note[] Mary =
        {
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.GbelowC, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.B, Duration.HALF),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.A, Duration.QUARTER),
        new Note(Tone.A, Duration.HALF),
        new Note(Tone.B, Duration.QUARTER),
        new Note(Tone.D, Duration.QUARTER),
        new Note(Tone.D, Duration.HALF)
        };
// Play the song
    Play(Mary);
    }

// Play the notes in a song.
    protected static void Play(Note[] tune)
    {
    foreach (Note n in tune)
        {
        if (n.NoteTone == Tone.REST)
            Thread.Sleep((int)n.NoteDuration);
        else
            Console.Beep((int)n.NoteTone, (int)n.NoteDuration);
        }
    }

// Define the frequencies of notes in an octave, as well as
// silence (rest).
    protected enum Tone
    {
    REST   = 0,
    GbelowC = 196,
    A      = 220,
    Asharp = 233,
    B      = 247,
    C      = 262,
    Csharp = 277,
    D      = 294,
    Dsharp = 311,
    E      = 330,
    F      = 349,
    Fsharp = 370,
    G      = 392,
    Gsharp = 415,
    }

// Define the duration of a note in units of milliseconds.
    protected enum Duration
    {
    WHOLE     = 1600,
    HALF      = WHOLE/2,
    QUARTER   = HALF/2,
    EIGHTH    = QUARTER/2,
    SIXTEENTH = EIGHTH/2,
    }

// Define a note as a frequency (tone) and the amount of
// time (duration) the note plays.
    protected struct Note
    {
    Tone     toneVal;
    Duration durVal;

// Define a constructor to create a specific note.
    public Note(Tone frequency, Duration time)
        {
        toneVal = frequency;
        durVal  = time;
        }

// Define properties to return the note's tone and duration.
    public Tone NoteTone { get{ return toneVal; } }
    public Duration NoteDuration { get{ return durVal; } }
    }
}
/*
This example produces the following results:

This example plays the first few notes of "Mary Had A Little Lamb"
through the console speaker.
*/
// This example demonstrates the Console.Beep(Int32, Int32) method
open System
open System.Threading

// Define the frequencies of notes in an octave, as well as
// silence (rest).
type Tone =
    | REST    = 0
    | GbelowC = 196
    | A       = 220
    | Asharp  = 233
    | B       = 247
    | C       = 262
    | Csharp  = 277
    | D       = 294
    | Dsharp  = 311
    | E       = 330
    | F       = 349
    | Fsharp  = 370
    | G       = 392
    | Gsharp  = 415

// Define the duration of a note in units of milliseconds.
type Duration =
    | WHOLE     = 1600
    | HALF      = 800
    | QUARTER   = 400
    | EIGHTH    = 200
    | SIXTEENTH = 100

// Define a note as a frequency (tone) and the amount of
// time (duration) the note plays.
[<Struct>]
type Note =
    { Tone: Tone
      Duration: Duration }

// Play the notes in a song.
let play tune =
    for n in tune do
        if n.Tone = Tone.REST then
            Thread.Sleep(int n.Duration)
        else
            Console.Beep(int n.Tone, int n.Duration)

// Declare the first few notes of the song, "Mary Had A Little Lamb".
let mary =
    [ { Tone = Tone.B; Duration = Duration.QUARTER }
      { Tone = Tone.A; Duration = Duration.QUARTER }
      { Tone = Tone.GbelowC; Duration = Duration.QUARTER }
      { Tone = Tone.A; Duration = Duration.QUARTER }
      { Tone = Tone.B; Duration = Duration.QUARTER }
      { Tone = Tone.B; Duration = Duration.QUARTER }
      { Tone = Tone.B; Duration = Duration.HALF }
      { Tone = Tone.A; Duration = Duration.QUARTER }
      { Tone = Tone.A; Duration = Duration.QUARTER }
      { Tone = Tone.A; Duration = Duration.HALF }
      { Tone = Tone.B; Duration = Duration.QUARTER }
      { Tone = Tone.D; Duration = Duration.QUARTER }
      { Tone = Tone.D; Duration = Duration.HALF } ]

// Play the song
play mary

// This example plays the first few notes of "Mary Had A Little Lamb"
// through the console speaker.
' This example demonstrates the Console.Beep(Int32, Int32) method
Imports System.Threading

Class Sample
   Public Shared Sub Main()
      ' Declare the first few notes of the song, "Mary Had A Little Lamb".
      Dim Mary As Note() =  { _
            New Note(Tone.B, Duration.QUARTER), _
            New Note(Tone.A, Duration.QUARTER), _
            New Note(Tone.GbelowC, Duration.QUARTER), _
            New Note(Tone.A, Duration.QUARTER), _
            New Note(Tone.B, Duration.QUARTER), _
            New Note(Tone.B, Duration.QUARTER), _
            New Note(Tone.B, Duration.HALF), _
            New Note(Tone.A, Duration.QUARTER), _
            New Note(Tone.A, Duration.QUARTER), _
            New Note(Tone.A, Duration.HALF), _
            New Note(Tone.B, Duration.QUARTER), _
            New Note(Tone.D, Duration.QUARTER), _
            New Note(Tone.D, Duration.HALF)}
      ' Play the song
      Play(Mary)
   End Sub
   
   ' Play the notes in a song.
   Protected Shared Sub Play(tune() As Note)
      Dim n As Note
      For Each n In  tune
         If n.NoteTone = Tone.REST Then
            Thread.Sleep(CInt(n.NoteDuration))
         Else
            Console.Beep(CInt(n.NoteTone), CInt(n.NoteDuration))
         End If
      Next n
   End Sub
   ' Define the frequencies of notes in an octave, as well as 
   ' silence (rest).
   
   Protected Enum Tone
      REST = 0
      GbelowC = 196
      A = 220
      Asharp = 233
      B = 247
      C = 262
      Csharp = 277
      D = 294
      Dsharp = 311
      E = 330
      F = 349
      Fsharp = 370
      G = 392
      Gsharp = 415
   End Enum 'Tone
   
   ' Define the duration of a note in units of milliseconds.
   
   Protected Enum Duration
      WHOLE = 1600
      HALF = WHOLE / 2
      QUARTER = HALF / 2
      EIGHTH = QUARTER / 2
      SIXTEENTH = EIGHTH / 2
   End Enum 'Duration
   
   ' Define a note as a frequency (tone) and the amount of 
   ' time (duration) the note plays.
   Protected Structure Note
      Private toneVal As Tone
      Private durVal As Duration
      
      ' Define a constructor to create a specific note.
      Public Sub New(frequency As Tone, time As Duration)
         toneVal = frequency
         durVal = time
      End Sub
      
      ' Define properties to return the note's tone and duration.
      Public ReadOnly Property NoteTone() As Tone
         Get
            Return toneVal
         End Get
      End Property
      
      Public ReadOnly Property NoteDuration() As Duration
         Get
            Return durVal
         End Get
      End Property
   End Structure 'Note '
'This example produces the following results:
'
'This example plays the first few notes of "Mary Had A Little Lamb" 
'through the console speaker.
'
End Class

Комментарии

Beep заключает в оболочку вызов функции Windows Beep. Создает ли Beep звук в версиях Windows до Windows 7, зависит от наличия программируемой микросхемы таймера с интервалом 8254. Начиная с Windows 7, он зависит от звукового устройства по умолчанию.

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