VC++6.0MFC中如何限制Edit控件只能输入0和1

VC++6.0MFC中如何限制Edit控件只能输入0和1,第1张

自己派生一个CMyEdit类,步骤如下:

1、Insert

->

New

Class

->

在Base

Class中选择CEdit,在Name中输入CMyEdit.

2、在左边的ClassView中,右键击CMyEdit,选择Add

Windows

message

Handle,在d出的框左边选择WM_CHAR,添加并编辑该消息如下:

void

CMyEdit::OnChar(UINT

nChar,

UINT

nRepCnt,

UINT

nFlags)

{

if(nChar!=49

&&

nChar!=48)

{

return

}

CEdit::OnChar(nChar,

nRepCnt,

nFlags)

}

3、在对话框中添加一个Edit控件,为Edit添加成员变量,Category选择Control

,

Variable

type选择CMyEdit,输入变量名即可。

完成上述三步后,该EDIT控件中就只能输入0和1

在头文件中要加上

#include "tchart.h"

#include "series.h"

#include "valuelist.h"

#include "axes.h"

#include "axis.h"

#include "pen.h"

#include "axislabels.h"

#include "teefont.h"

#include "axistitle.h"

#include "aspect.h"

#include "fastlineseries.h"

#include "titles.h"

#include "fastlineseries.h"

#include "panel.h"

#include "legend.h"

#include "tools.h"

#include "toollist.h"

#include "annotationtool.h"

#include "page.h"

TeeChart类的属性和方法

TeeChart的主类是TChart。TChart中使用了众多的属性方法和事件,随着版本的升级将越来越丰富。这使得TChart具有非常强大的功能。本文仅简单地介绍其中一些重要类的属性和方法。

●TChart.Height:图表的高度(像素);

●TChart.Width:图表的宽度(像素);

●TChart.Header:图表的题头(Ititles类);

●TChart.Series:序列(Series类的数组);

●TChart.Axes:坐标轴(Iaxes类);

●TChart.Legend:图例(Legend类);

●TChart.Panel:面板(Ipanel类);

●TChart.Canvas:画布(Canvas类)。

Series是要显示的数据的主体。在一个图表中可以有一个或多个序列,每个序列可以有不同的显示类型,如Line、Bar、Pie等等。

Axes控制图表坐标轴的属性,在缺省的情况下,坐标轴可以自动地根据不同的数据设置好标度范围和间隔,当然也可以手工调整。

Legend控制图表的图例显示。Legend是图表中的一个长方形的用来显示图例标注的区域。可以标注Series的名称或者Series中的项目和数值。

Panel可以设置图表的背景。可以使用渐变的颜色或者图像文件作为整个图表的背景

Canvas可以让设计者绘制自己的图形。使用方法和Delphi中的Canvas一样。有TextOut、 LineTo、Arc等各种画图的方法可以调用。

TChart的一些属性实际上是其他类的变量,这些类又具有自己的属性和方法。如Ititles类又具有Text、Color、Font等属性,我们可以用这些属性来设置题头的文本、颜色和字体。

TeeChart和其他的图表控件相比,有一个非常重要的特点是TeeChart可以把图表保存为一个JPEG格式的图形文件。调用格式如下:

TChart.Export.SaveToJPEGFile (FileName,Gray,Performance,Quality,Width,Height)

其中FileName是JPEG文件的保存路径和文件名,路径应该是 *** 作系统中的绝对路径,而不是IIS中的相对路径,IIS对相应的保存目录应该具有写权限。Gray指明是否保存为黑白图像。Performance指明JPEG是生成质量优先还是速度优先。Quality是一个0到100的整数,100时JPEG质量最好,但文件最大;Quality越小则生成的文件越小,但图像质量也随之下降。

int index = 100//CEdit子满时的长度

CEdit *edt = (CEdit *)GetDlgItem(IDC_EDIT1)

//左移

edt->SetFocus()

index++

edt->SetSel(index,index)

//右移

index--

edt->SetFocus()

edt->SetSel(index,index)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7916039.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存