| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5362 人关注过本帖
标题:急!!!VC里怎么使用clrscr和gotoxy?
只看楼主 加入收藏
Bloody_Mary
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:13 
急!!!VC里怎么使用clrscr和gotoxy?
上网查了一下,发现VC不包含conio.h,可是我很急着用clrscr函数和gotoxy函数啊,VC里有没有类似的可用函数呢?如果没有该怎么解决呢???急啊!!!各路大神帮帮忙啊!!!
搜索更多相关主题的帖子: 上网 
2012-10-04 11:45
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
VC里有cinio.h,但不是你用惯的TC中的那些函数。使用Win32 API有你所需要的东西,那是MS-C系列的实现方式,TC是另类的。

授人以渔,不授人以鱼。
2012-10-04 11:51
Bloody_Mary
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-16
收藏
得分:0 
回复 楼主 Bloody_Mary
clrscr我已经会了,用system("cls");就可以了,关键是怎么用和gotoxy类似的函数呢?API什么的我不会啊
2012-10-04 12:41
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
程序代码:
#include <Windows.h>
#include <clocale>

using namespace System;

void wmain(void)
{
    _wsetlocale(LC_ALL, L"chs");                        // 设定简体中文环境

    Console::BackgroundColor = ConsoleColor::DarkBlue;
    Console::Clear();

    Console::SetWindowSize(Console::LargestWindowWidth / 2, Console::LargestWindowHeight / 2);
    Console::ForegroundColor = ConsoleColor::White;
    for (Int32 row = 0; row < Console::WindowHeight; ++row)
    {
        Console::SetCursorPosition(0, row);
        Console::Write("{0:D02}", (row + 1));
    }
    String^ text1 = String::Format(L"当前窗口宽度={0:D}, 高度={1:D}", Console::WindowWidth, Console::WindowHeight);
    String^ text2 = String::Format(L"控制台窗口最大宽度={0:D}, 最大高度={1:D}", Console::LargestWindowWidth, Console::LargestWindowHeight);
    Console::ForegroundColor = ConsoleColor::Yellow;
    Console::SetCursorPosition((Console::WindowWidth - text2->Length - 3) / 2, Console::WindowHeight - 1);
    Console::Write(text2);
    Console::SetCursorPosition((Console::WindowWidth - text1->Length - 3) / 2, 1);
    Console::Write(text1);

    Console::ReadLine();
}


图片附件: 游客没有浏览图片的权限,请 登录注册

授人以渔,不授人以鱼。
2012-10-04 12:53
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用Bloody_Mary在2012-10-4 12:41:05的发言:

clrscr我已经会了,用system("cls");就可以了,关键是怎么用和gotoxy类似的函数呢?API什么的我不会啊

用system("cls")那个不叫“会”!

授人以渔,不授人以鱼。
2012-10-04 12:57
Bloody_Mary
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-16
收藏
得分:0 
回复 4楼 TonyDeng
呃大神辛苦……谢谢了!我又找到了一个可以在VC下运行gotoxy的函数,是这样的:
void gotoxy(int x,int y) //在VC下使用gotoxy  
{
     CONSOLE_SCREEN_BUFFER_INFO         csbiInfo;                             
     HANDLE     hConsoleOut;

     hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
     GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

     csbiInfo.dwCursorPosition.X = x;                                   
     csbiInfo.dwCursorPosition.Y = y;                                    
     SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition);  
}
经过试验是可以运行的
大神写的那么多代码没学过也看不懂啊……跪拜……

2012-10-04 13:29
Bloody_Mary
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-16
收藏
得分:0 
回复 3楼 Bloody_Mary
哦我知道了,你的意思是控制整个窗口的大小颜色??
2012-10-04 13:31
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
6楼那个就是用Win32 API实现的代码,但你需要查阅MSDN中相关的资料,很多API函数要配套使用。你现在是要用到gotoxy()就去找现成的gotoxy()代码,但估计你后面还有更多类似TC conio.h中那些用法,没那么容易找的。我给你的那些是微软C++/CLR版本的代码,有现成的整套类库函数可用,不用到处找。

授人以渔,不授人以鱼。
2012-10-04 13:42
Bloody_Mary
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-9-16
收藏
得分:0 
回复 7楼 Bloody_Mary
谢谢!
2012-10-04 16:39
LShang
Rank: 4
来 自:China
等 级:业余侠客
威 望:3
帖 子:183
专家分:258
注 册:2010-12-24
收藏
得分:10 
唔 T版对windows的研究好像很深,学习。

学如逆水行舟,不进则退
士不可以不弘毅,任重而道远
2012-10-04 16:51
快速回复:急!!!VC里怎么使用clrscr和gotoxy?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018113 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved