65.9K
CodeProject is changing. Read more.
Home

Setting a DOS box as large as the monitor will allow

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0 vote)

Nov 12, 2011

CPOL
viewsIcon

7300

Using a few members of the System.Console class to fill the screen

I spend a lot of time working in a DOS box (Windows Command Prompt) and I like a lot of real estate. What I don't like is that when I start working on a new system, I have to figure out the maximum number of lines I can fit on the screen and the maximum number of characters I can fit on a line and then size the DOS box to fill the screen. Finally, I have taken the time to look into the System.Console class to see what it offers and by golly, it has just the tools I require, so I wrote the following method:
public static bool
TryFillScreen
(
  int HeightAdjustment
,
  int WidthAdjustment
)
{
  bool result = true ;

  try
  {
    System.Console.BufferHeight = System.Int16.MaxValue - 1 ;

    System.Console.WindowHeight =
      System.Console.LargestWindowHeight + HeightAdjustment ;

    System.Console.WindowWidth = System.Console.BufferWidth =
      System.Console.LargestWindowWidth + WidthAdjustment ;
  }
  catch
  {
    result = false ;
  }

  return ( result ) ;
}
The HeightAdjustment and WidthAdjustment parameters are to adjust the height and width if the system doesn't guess quite right; I have found that the LargestWindowWidth property doesn't take the scroolbar into account, so I have to adjust the width by -4.