Como limpar a janela Console programaticamente usando translation from VPE for Csharp Visual

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 319257
Para uma versão deste artigo do Visual Basic, consulte 319239.

Este artigo se refere aos seguintes namespaces Microsoft .NET Framework Class Library:
  • sistema
  • System.Runtime.InteropServices

NESTA TAREFA

Sumário
Este artigo passo a passo demonstra como limpar a janela Console programaticamente usando translation from VPE for Csharp Visual.

back to the top

Programa de exemplo

  1. Inicie o Microsoft Visual Studio.
  2. Crie um novo projeto do Visual translation from VPE for Csharp Console Application.
  3. Colar a instrução usando o seguinte na parte superior da classe padrão:
       using nsClearConsole;					
  4. Cole o seguinte código no procedimento de principal do aplicativo de console:
    static void Main(string[] args){   ClearConsole ClearMyConsole = new ClearConsole();   Console.WriteLine("THIS IS FIRST LINE");  // Some text   Console.WriteLine("THIS IS SECOND LINE"); // Some text    Console.WriteLine("THIS IS THIRD LINE");  // Some text   Console.WriteLine("THIS IS FOURTH LINE"); // Some text     Console.WriteLine("THIS IS FIFTH LINE");  // Some text   Console.WriteLine("Hit Enter to Clear");  // Some text   Console.ReadLine();  // Wait for user input   ClearMyConsole.Clear(); // Clear the screen   Console.WriteLine("THE CONSOLE WAS CLEARED");  // Some text to clear console   Console.WriteLine("Hit Enter to Terminate");  //Some text   Console.ReadLine();  // Wait for user input}					
  5. No menu Project , clique em Add Class .
  6. Na caixa de diálogo Add New Item , selecione Class e, em seguida, clique em Adicionar .
  7. Substituir todo o código existente na nova classe com o seguinte código:
       using System;   using System.Runtime.InteropServices;   namespace nsClearConsole   {      /// <summary>      /// Summary description for ClearConsole.      /// </summary><BR/>      public class ClearConsole      {		         private const int STD_OUTPUT_HANDLE  = -11;	 private const byte EMPTY = 32;         [StructLayout(LayoutKind.Sequential)]         struct COORD         {            public short x;            public short y;         }         [StructLayout(LayoutKind.Sequential)]         struct SMALL_RECT         {            public short Left;            public short Top;            public short Right;            public short Bottom;         }		         [StructLayout(LayoutKind.Sequential)]         struct	CONSOLE_SCREEN_BUFFER_INFO         {            public COORD dwSize;            public COORD dwCursorPosition;            public int wAttributes;            public SMALL_RECT srWindow;            public COORD dwMaximumWindowSize;         }         [DllImport("kernel32.dll", EntryPoint="GetStdHandle", SetLastError=true, CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]         private static extern int GetStdHandle(int nStdHandle);         [DllImport("kernel32.dll", EntryPoint="FillConsoleOutputCharacter", SetLastError=true, CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]         private static extern int FillConsoleOutputCharacter(int hConsoleOutput, byte cCharacter, int nLength, COORD dwWriteCoord, ref int lpNumberOfCharsWritten);         [DllImport("kernel32.dll", EntryPoint="GetConsoleScreenBufferInfo", SetLastError=true, CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]         private static extern int GetConsoleScreenBufferInfo(int hConsoleOutput, ref CONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo);         [DllImport("kernel32.dll", EntryPoint="SetConsoleCursorPosition", SetLastError=true, CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]         private static extern int SetConsoleCursorPosition(int hConsoleOutput, COORD dwCursorPosition);         private int hConsoleHandle;         public ClearConsole()         {            //             // TODO: Add constructor logic here.            //             hConsoleHandle = GetStdHandle(STD_OUTPUT_HANDLE);         }         public void Clear()         {            int hWrittenChars = 0;            CONSOLE_SCREEN_BUFFER_INFO strConsoleInfo = new CONSOLE_SCREEN_BUFFER_INFO();			            COORD Home;		            Home.x = Home.y = 0;            GetConsoleScreenBufferInfo(hConsoleHandle, ref strConsoleInfo);            FillConsoleOutputCharacter(hConsoleHandle, EMPTY, strConsoleInfo.dwSize.x * strConsoleInfo.dwSize.y, Home, ref hWrittenChars);            SetConsoleCursorPosition(hConsoleHandle, Home);         }      }   }					
  8. Pressione F5 para executar o aplicativo. Observe que o texto na janela do console está desmarcado.
back to the top

Referências
Para obter mais informações sobre funções do console, visite o seguinte site da Web Microsoft Developer Network (MSDN): back to the top

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 319257 - Última Revisão: 07/30/2008 22:54:57 - Revisão: 3.1

Microsoft Visual C# 2008 Express Edition, Microsoft Visual C# 2005 Express Edition

  • kbmt kbsweptvs2008 kbhowtomaster KB319257 KbMtpt
Comentários