知识点:
GetStdHandle函数
FillConsoleOutputCharacter函数
SetConsoleCursorPosition函数
system函数 一、 GetStdHandle 获取标准设备句柄 :  
 HANDLE GetStdHandle(   DWORD nStdHandle   );  
 GetStdHandle()返回标准的输入、输出或错误的设备的句柄,也就是获得输入、输出/错误的屏幕缓冲区的句柄。  
 其参数nStdHandle的值为下面几种类型的一种:  
 值含义  
 STD_INPUT_HANDLE 标准输入的句柄  
 STD_OUTPUT_HANDLE 标准输出的句柄   
STD_ERROR_HANDLE 标准错误的句柄
二、FillConsoleOutputCharacter 填充字符
BOOL FillConsoleOutputCharacter( HANDLE hConsoleOutput, // 缓冲区句柄 一般通过
GetStdHandle(STD_OUTPUT_HANDLE)获取
TCHAR cCharacter, // 要填充的字符
DWORD nLength, // 填充的字符数量
COORD dwWriteCoord, // 填充的起始坐标x,y
LPDWORD lpNumberOfCharsWritten
// 返回一个写入数量的指针 ); 三、SetConsoleCursorPosition 移动光标位置
BOOL SetConsoleCursorPosition( HANDLE hConsoleOutput, //缓冲区句柄 一般通过
GetStdHandle(STD_OUTPUT_HANDLE)获取 COORD dwCursorPosition // 指定新的光标位置
); 四、设置当前光标位置 gotoxy(int x, int y);
//之前需要用字符填满窗口缓冲区
、获取当前输出缓冲区句柄 GetStdHandle
、设置当前光标位置(x,y) SetConsoleCursorPosition 五、用system命令设置颜色和标题
system("title 郁金香灬老师:QQ150330575"); //设置标题
system("color 0A"); //设置颜色
六、绘制方框
、确定左上角坐标X,Y //画边前先用空格填满窗口缓冲区
、画上边
、画下边
、画左边
、下右边 作业:
A、探讨以下2个控制台函数的使用方法:
、GetConsoleTitle 获取控制台窗口标题
、SetConsoleTitle 设置控制台窗口标题
B、绘制一个2*2的表格 : 类似下图 #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <stdarg.h>
#include <time.h>
#include "hello.h"
#include <share.h>
#include <Windows.h> //清屏
void cls_screen(char a)
{
COORD xy={,};
long byw;
HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE);
FillConsoleOutputCharacter(hout,a,,xy,&byw);
}
//#define var 333;
void gotoxy(int x,int y)
{
COORD xy={,}; HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE);
xy.X=x;
xy.Y=y;
SetConsoleCursorPosition(hout,xy);
}
//绘制方框
#define X 22
#define Y 6
void drawM(void)
{ int i,j;
//到达x,y
gotoxy(X,Y);
//上边--------------------
printf("┏");
for (i=;i<=;i++)
{
printf("━");
}
printf("┓");
//左边 for (i=;i<;i++)
{
gotoxy(X,Y++i);
printf("┃");
}
//右边 for (i=;i<;i++)
{
gotoxy(X+,Y++i);
printf("┃");
}
//下边
gotoxy(X,Y+);
//上边--------------------
printf("┗");
for (i=;i<=;i++)
{
printf("━");
}
printf("┛"); }
int main(void)
{ system("title QQ150330575");
system("color 0a");
system("dir");
cls_screen(' ');//清屏;
cls_screen(' ');//;
gotoxy(,);
//绘制方框
drawM();
getchar();
getchar();
return ;
}

c++ 绘制方框的更多相关文章

  1. WPF 截图控件之绘制方框与椭圆(四) 「仿微信」

    前言 接着上周写的截图控件继续更新 绘制方框与椭圆. 1.WPF实现截屏「仿微信」 2.WPF 实现截屏控件之移动(二)「仿微信」 3.WPF 截图控件之伸缩(三) 「仿微信」 正文 有开发者在B站反 ...

  2. C# 绘制矩形方框读写内存类 cs1.6人物透视例子

     封装的有问题 其中方框可能在别的方向可能 会显示不出来建议不要下载了 抽时间我会用纯c#写一个例子的  其中绘制方框文字和直线调用的外部dll采用DX11(不吃CUP)绘制我封装成了DLL命名为 S ...

  3. FPS游戏逆向-方框透视(三角函数)

    本套课程主要学习FPS类游戏安全 由于FPS类游戏本身的特性问题,可能产生一些通用的游戏安全问题 在通过逆向与正向对FPS类游戏分析之后,找到其可能出现的不安全点 才能更好的保护游戏不被外部力量侵犯 ...

  4. WPF 截图控件之绘制箭头(五)「仿微信」

    前言 接着上周写的截图控件继续更新 绘制箭头. 1.WPF实现截屏「仿微信」 2.WPF 实现截屏控件之移动(二)「仿微信」 3.WPF 截图控件之伸缩(三) 「仿微信」 4.WPF 截图控件之绘制方 ...

  5. 【232】◀▶ IDL显示地理图像

    参考: 01   IMAGE 将图像数据以图形窗体的形式显示. 02   COLORBAR 在已经存在的IDL图形中增加一个colorbar或创建. 03   MAPGRID 在已经存在的IDL地图图 ...

  6. C++实现双缓冲

    首先声明下,这篇资料也是整理别人的资料的基础上,总结来的. 在图形图像处理过程中,双缓冲技术是一种比较常见的技术.窗体在响应WM_PAINT消息时,需要对图像进行绘制处理.如果图像绘制次数过多,重绘过 ...

  7. [转]结合轮廓显示,实现完整的框选目标(附Demo代码)

    原地址:http://www.cnblogs.com/88999660/articles/2887078.html 几次看见有人问框选物体的做法,之前斑竹也介绍过,用画的框生成的视椎,用经典图形学的视 ...

  8. unity3d结合轮廓显示,实现完整的框选目标(附Demo代码)

    原地址:http://dong2008hong.blog.163.com/blog/static/469688272013111554511948/ 在unity里实现,其实很简单,因为有两个前提:1 ...

  9. Linux学习笔记13——使用curses函数库

    一 安装curses库 如果你的Linux系统中curses库,直接敲入命令sudo apt-get install libncurses5-dev,然后就会自动安装curses库,安装好之后敲入命令 ...

随机推荐

  1. swift知识点 [1]

    swift知识点 [1] 循环遍历元素 三目运算符用途 Optional 与 ImplicitlyUnwrappedOptional 以及常规类型数据 is 的用法

  2. C#(.NET)面试题:做一个能自定义输入命令的表格程序

    目前为止,已经面试  5  10 家了... 这个试题面试的公司是某一上市公司. 试题是英文的(后面给出翻译): you're given a task of writing a simple pro ...

  3. 访问一个HTTPS的网站的大致流程

    浏览器向服务器发送请求,请求中包括浏览器支持的协议,并附带一个随机数. 服务器收到请求后,选择某种非对称加密算法,把数字证书签名公钥.身份信息发送给浏览器,同时也附带一个随机数. 浏览器收到后,验证证 ...

  4. Java & Groovy & Scala & Kotlin - 20.Switch 与模式匹配

    Overview 本章主要介绍高级条件语句中的 switch 语句以及其增强版的模式匹配. Java 篇 Switch 特点 Java 中 switch 语句功能类似 if,但是 switch 主要用 ...

  5. apache ActiveMQ之初体验

    版权声明: https://blog.csdn.net/zdp072/article/details/27237549 一. 开篇语 继上一篇weblogic中使用jms发送和接受消息的文章后, 本文 ...

  6. PHP中include和require

    1.include语句 使用include语句可以告诉PHP提取特定的文件,并载入它的全部内容 1 <?php 2 inlude "fileinfo.php"; 3 4 // ...

  7. [Baltic2014]friends

    嘟嘟嘟 首先想想暴力的做法,枚举加入的字符,然后判断删去这个字符后两个长度为n / 2的字符串是否相等,复杂度O(n2). 所以可以想办法把判断复杂度降低到O(1),那自然就想到hash了.hash是 ...

  8. python基础整理7——爬虫——爬虫开发工具

    HTTP代理神器Fiddler Fiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP请求. Fiddler启动的时候,默认IE的代理设为了127.0.0.1:8888,而其他浏 ...

  9. 韩天峰力荐 Swoole入门到实战打造高性能赛事直播平台

    第1章 课程介绍欢迎大家来到swoole的课程!本章主要是介绍了swoole的一些特性,以及使用场景,并且分享了swoole在其他公司的一些案例,最后重点讲解了swoole学习的一些准备工作.1-1 ...

  10. 插件式程序开发及其应用(C#)

    1.  定义 所谓“插件模型”,指应用程序由一些动态的独立模块构成,每个模块均具有一个或多个服务,并满足一定的插件协议,能够借助主程序实现主程序-插件:插件-插件之间的通讯. 应用该模型的系统,具有以 ...