2011-06-14 60 views
0

我是C++的新手,我想知道控制台应用程序在图形中的限制。例如---我可以创建一些东西,像一些色彩缤纷的屏幕保护程序,它们具有各种颜色的飞溅。我可以根据输入字符串绘制改变颜色的线 吗?我会很感激任何建议有人可以 给我。Visual Studio 2010 C++控制台应用程序

感谢道格

+1

为什么在世界上你想要在控制台窗口中显示高级图形?它不是为这种事情设计的。但是,您可以轻松更改字体颜色。 – 2011-06-14 23:33:29

+0

你在问'main()'和'WinMain()'应用程序之间的区别吗?如果您担心这一点,您可以调用Windows API函数来显示图形,甚至可以从控制台应用程序(带有main()'入口点)来显示图形。 – 2011-06-15 00:15:59

回答

1

如果你想要做一些认真的动画,你会pribably需要硬件加速图形(的DirectX,OpenGL的)。如果你只是想要简单的图像和动画GUI应用程序会做。就控制台而言,它并非真正用于文本输出,但它也可以绘制线条并更改颜色,如果您真的想要的话。

然而这三者中没有一个是C++的局限性...... C++作为一种语言并不关心图形,它主要是操作系统的限制,你会发现大部分的绘图代码,但是你去了解它会有点OS或硬件相关,除非您使用具有GUI或图形支持(如QT,wxWidgets,OpenGL等)的跨平台库。

0

C++没有任何标准工具来在控制台应用程序中绘制图形。任何功能(如更改字体颜色)将取决于您的操作系统。我怀疑你会发现比改变文字颜色更多的功能。 (例如,在Windows上,您将使用系统(“color xx”)更改前景色和背景色。)

基本上,如果您需要图形,您将不得不放弃控制台应用程序并寻找图形API。

0

我可以创建一些作为一些具有各种颜色飞溅的颜色非常丰富多彩的屏幕保护的东西?

如果通过“飞溅”你的意思是“大块文字”,那么是的。否则不。

我可以根据输入字符串绘制改变颜色的线吗???

不,控制台是文本媒体。

如果你想尝试去控制台做事,你需要使用Windows Console Functions。标准C++没有任何方法来改变控制台的颜色。

1

正如其他人所说,控制台应用程序是用于文本,而不是图形!我不知道有什么方法(或理由)在控制台中做图形。

要使用Visual C++来完成您感兴趣的事情(除了可能的Windows屏幕保护程序),我会建议从SDL library开始。懒惰Foo制作网站有一个excellent series of game programming tutorials,第一课给你一个分步指南,建立一个应用程序,在屏幕上显示的东西。它甚至具有显示如何配置Visual Studio 2010的屏幕截图,如果你是新手,这一点非常重要。

SDL是免费的,跨平台的,并且会让你(你的程序的窗口内):

  • 平局像素,线条和矩形任何颜色
  • 画文本
  • 绘制图像
  • 制作动画(通过每秒更改/重画屏幕多次)
  • 获取键盘输入(包括释放按键时)

它也可以让你用OpenGL做3D图形,但那是另一回事。

1

如果你非常绝望 - 但肯定不是平台独立的,你可以。从内存来看,Windows API非常适合让你对它的控制台做很多疯狂的操作。但是,最好建议为此目的获得一个真正的图形API,例如GDI,DirectX或OpenGL。

相关问题