【C语言】【windows】--进制转换器
erbi_lucifer吧
全部回复
仅看楼主
level 10
堕erbi
楼主
光影的世界……吾为光为影?
2012年02月20日 04点02分
1
level 10
堕erbi
楼主
程序名称:进制转换器
编译器:vs2010(其它也可以……)
程序大小:10K
文件包括:进制转换器.exe,skinh.she,SkinH.dll,msvcr100.dll
程序界面:
所需控件:
按钮:IDOK,IDCNCEL,IDC_ABOUT。
标签:图中显示文字的那三个。
文本框:输入(IDC_SJZ)和输出(IDC_EDIT2)
下拉列表:IDC_COMBO1
注意:IDC_COMBO1控件在画的时候要向下画大些,虽然现在看不出来。
2012年02月20日 04点02分
2
level 10
堕erbi
楼主
001.
/**************************************************************************
对于Combobox控件(IDC_COMBO1)
************************************************************************/
在这里我们用它来选择进制类型,二进制,八进制,还是十六进制。
一开始下拉列表是木有东西的,我们需要在对话框的初始化消息中加入让combobox显示文字的函数:
/***********************************************************************
HWND CONBOBHWND = GetDlgItem(hwndDlg,IDC_COMBO1);
SendMessage(CONBOBHWND,CB_INSERTSTRING,0,(LPARAM)_T("二进制"));
***********************************************************************/
函数GetDlgItem是获得指定窗体上控件的句柄:
GetDlgItem(窗体句柄,控件ID);
我们用SendMessage来发送消息,让combobox显示文字。
SendMessage(控件句柄,消息类型(CB_INSERTSTRING是插入字符串),位置,内容);
接下来。
我们只需要得到它现在显示的是多少进制
/***********************************************************************
TCHAR SThide[20]={0};
GetDlgItemText(hwndDlg, IDC_COMBO1, SThide, sizeof(SThide));
***********************************************************************/
函数GetDlgItemText,得到目标控件的文本。
GetDlgItemText(窗体句柄,控件ID,字符数组,数组大小);
2012年02月20日 04点02分
3
level 10
堕erbi
楼主
002.
本程序主要的函数:
1) 在C语言控制台程序里有这么两个函数:itoa和atoi
/***********************************************************************
其中itoa是将数字转换为字符
而atoi是将字符转换为指定进制的数字
/***********************************************************************
我们要的就是这个“指定进制”……
将文本框的字符转化为数字,再转化为某进制的字符输出即可……
其实很多程序说白了,都是很简单的,只要明白原理,一切皆有可能……
2) 在这里我们主要用:
/***********************************************************************
_ttoi(字符数组);
_itot(integer类型的变量,字符数组,多少进制)
***********************************************************************/
它们是itoa和atoi的宽字符版
把文本框的内容放入_ttoi()中,转化为数字i后在放入_ itot(i,str,2)便得到该数字的2进制形式并放入字符数组str中,最后我们把str在文本框中显示即可……
2012年02月20日 04点02分
4
level 10
堕erbi
楼主
度娘无视代码的缩进了……
/***********************************************************************
************************************************************************/
01.其中(_tcscmp相当于strcmp,用于比较字符串是否相同
02.combobox的type属性改为Drop List,防止使用者往下拉列表写入其它东东。
2012年02月20日 05点02分
7
level 7
chenwillbeup
每天顶一下,给吧里加点人气
2012年03月26日 09点03分
8
level 12
淡静若情
w我是来看看的 虽然我不懂这个东东 但是好厉害的样子。。。回头有麻烦就找你帮忙
2012年03月28日 01点03分
9
level 4
mmkoo007
2012年04月28日 12点04分
10
1