在C语言Windows编程中怎样判断编辑框中没有内容时报错,最好给出代码,谢谢!

如题所述

窗口过程核心代码,测试环境vc6  _MBCS

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{

...

     static HWND hEdit;

static HWND hBtn;

TCHAR buf[1000];

     switch (message)

     {

     case WM_CREATE:

          //PlaySound (TEXT ("hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ;

         hEdit = CreateWindowEx(WS_EX_CLIENTEDGE, TEXT("EDIT"), TEXT(""), 

WS_CHILDWINDOW, 100, 100, 200, 30,

hwnd, NULL, NULL, NULL);

ShowWindow(hEdit, SW_SHOW);

hBtn = CreateWindowEx(WS_EX_WINDOWEDGE, TEXT("BUTTON"), TEXT("按钮"), 

WS_CHILDWINDOW, 340, 100, 100, 30,

hwnd, NULL, NULL, NULL);

ShowWindow(hBtn, SW_SHOW);

return 0 ;

     case WM_COMMAND:

if(lParam == (LPARAM)hBtn)

{

GetWindowText(hEdit, buf, 1000);

if(!strlen(buf))

{

MessageBox(hwnd, TEXT("文本框为空!"), TEXT("错误"), MB_OK);

}

}

return 0;

 ....

     case WM_DESTROY:

 DestroyWindow(hEdit);

 DestroyWindow(hBtn);

          PostQuitMessage (0) ;

          return 0 ;

     }

     return DefWindowProc (hwnd, message, wParam, lParam) ;

}


再来几个mfc的

void CMfcdlg2014Dlg::OnButton1() 

{

// TODO: Add your control notification handler code here

CString s;

GetDlgItemText(IDC_EDIT1, s);

if(s.IsEmpty())

{

MessageBox(_T("文本框为空!"));

}

}


void CMfcdlg2014Dlg::OnButton2() 

{

// TODO: Add your control notification handler code here

TCHAR buf[1000];

GetDlgItemText(IDC_EDIT1, buf, 1000);

if(!strlen(buf))

{

AfxMessageBox(_T("Edit1为空!"));

}

}


void CMfcdlg2014Dlg::OnButton3() 

{

// TODO: Add your control notification handler code here

CWnd *p = GetDlgItem(IDC_EDIT1);

CString s;

((CEdit*)p)->GetWindowText(s);

if(s.IsEmpty())

{

MessageBox(_T("文本框为空!"));

}

}


void CMfcdlg2014Dlg::OnButton4() 

{

// TODO: Add your control notification handler code here

TCHAR buf[1000];

::GetDlgItemText(m_hWnd, IDC_EDIT1, buf, 1000);

if(!strlen(buf))

{

AfxMessageBox(_T("Edit1为空!"));

}

}


温馨提示:内容为网友见解,仅供参考
无其他回答

vc 6 Windows编程中编辑框内容为空时报错怎么写?
\/\/IDC_EDIT1 为编辑框的ID号,把编辑框内容写入到temp里 CString temp = "";((CEdit*)GetDlgItem(IDC_EDIT1))->GetWindowText(temp);\/\/再检查一下temp是否为空就行 if( "" == temp ){ MessageBox( "编辑框内容为空,请检查!","提醒", MB_OK);} ...

我在用VC写C语言的代码的时候提示是没有错误的,为什么在运行的时候...
看来可能你中间有哪步有严重错误了,以至于系统要强制关闭程序,好好检查一下吧

程序设计中的指令是什么?有哪几种?
(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。 (2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。 (3)VC是微软制作的产品,与操作系统的结合更加紧密。 缺点 对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习...

我在用VC写C语言的代码的时候提示是没有错误的,为什么在运行的时候...
设置

C语言windows编程关于float
看不懂wsprintf(buf,"%f",num1);

...c++上运行C语言程序啊,回答一定要具体啊,最好给个例子演示一下_百度...
1 打开Visual C++ 2 单击:【文件】->【新建】->Win32 Console Application 3 在右上角的 【工程名称】 中输入你的工程名(如 Hello 4 单击 【确定】按钮,再单击【完成】按钮 5 接着会出现工程界面,你再单击 【文件】->【新建】,单击[【C++ Source File】,在右边的【文件名】中输入...

...c++上运行C语言程序啊,回答一定要具体啊,最好给个例子演示一下_百度...
1 打开Visual C++ 2 单击:【文件】->【新建】->Win32 Console Application 3 在右上角的 【工程名称】中输入你的工程名(如 Hello 4 单击 【确定】按钮,再单击【完成】按钮 5 接着会出现工程界面,你再单击 【文件】->【新建】,单击[【C++ Source File】,在右边的【文件名】中输入你一个...

编程语言有几种,分别都是编什么程序的?
(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。 (2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。 (3)VC是微软制作的产品,与操作系统的结合更加紧密。 缺点 对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来...

编程中VB跟VC指的是什么 请详细说清楚...
2、C语言基础 3、C++最基本内容:类、继承性、封装性、多态性的概念 4、如何用向导建立一个程序框架 5、设计菜单 6、设计工具条 7、设计和使用对话框,熟悉最常用的对话框控件:按钮、静态文本、编辑框等 8、知道怎样新建类、成员函数、成员变量、消息处理函数。 9、了解最常用的Windows消息:如WM_PAINT...

c++编译出来的程序不是直接运行在windows下的吗? 为什么又有c++运行...
因为你的程序链接的库是动态链接库,C++运行时的作用是在没有开发环境的计算机上提供同样的动态链接库

相似回答