请教:有关Edit和Memo控件的问题

andyzhu9 2004-05-10 04:44:43
我需要在Edit控件输入十六进制的数值,如何将它取出来,赋给一个变量?或者说在哪一个控件中对输入的十六进制处理起来比较方便?

我定义一个unsigned char buffer[256]数值,其中存有数值,如何将它们在Memo控件中以十六进制输出?或者说在哪一个控件这样输出比较方便?
...全文
125 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
andyzhu9 2004-05-14
  • 打赏
  • 举报
回复
谢老妖,试了一下,对了......

还有一个问题,就是如何将unsigned char buffer[256]定义的数组中的值以十六进制的形式输出到Memo控件中.
ccrun.com 2004-05-13
  • 打赏
  • 举报
回复
i = StrToInt("0x" + Edit1->Text);
andyzhu9 2004-05-13
  • 打赏
  • 举报
回复
我试过了,比如在Edit控件中输入0F,按说应该得到15,但运行时却提示"OF不是一个有效的整数值".
JetKingLau 2004-05-12
  • 打赏
  • 举报
回复
StrToInt好像不可以进行将"以十六进制表现的字符串转为整型"吧?
/////////////////
BCB Help...

StrToInt

Converts an AnsiString that represents an integer (decimal or hex notation) to a number.

Unit

SysUtils

Category

type conversion routines

extern PACKAGE int __fastcall StrToInt(const AnsiString S);

Description

StrToInt converts the string S, which represents an integer-type number in either decimal or hexadecimal notation, into a number. If S does not represent a valid number, StrToInt throws an EConvertError exception.
andyzhu9 2004-05-12
  • 打赏
  • 举报
回复
先谢了!
StrToInt好像不可以进行将"以十六进制表现的字符串转为整型"吧?

我的buffer中保存只是一个很普通的数值,把字义为unsigned char,只是为了限制它的长度为一个Byte.
sunliwen780502 2004-05-11
  • 打赏
  • 举报
回复
int i;
i = StrToInt(Edit1->Text);//取出Edit的内容赋给变量

如果buff数组中保存的是十六进制的数。可以这样做:
Memo1->Lines->Clear();
for (int i = 0; i < 256; i++)
{
Memo1->Lines->Add(buff[i]);
}

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧