3.7.4 登记入库界面的实现(2)
获取入库单号主要算法是把最大的入库单号找到后,由于对应的变量是字符串,故须分割后把最后的一位值加1,如果原记录里没有,则最后一位的值为1。
还有一个关键技术是实现了按钮的隐藏及显示,在本系统中采用函数ShowWindows()封装,其功能就是实现了对部分控件的隐藏与显示。
代码位置:见光盘中本章源代码的CGATHERIN类。
- 1 void CGATHERIN::ShowWindows(bool flag)
- 2 {
- 3 int i=0;
- 4 m_allmoney.SetFontSize(20); //设置字体大小
- 5 m_allmoney.SetTextColor(RGB(0,255,0)); //设置字体颜色
- 6 m_allmoney.SetBkColor(RGB(0,0,0)); //设置字体背景颜色
- 7 m_allmoney.SetText("累计\r\n金额:"); //输出
- 8 GetDlgItem(IDC_STATIC1)->ShowWindow(flag); //显示控件标题,下同
- 9 GetDlgItem(IDC_STATIC2)->ShowWindow(flag);
- 10 GetDlgItem(IDC_STATIC3)->ShowWindow(flag);
- 11 GetDlgItem(IDC_STATIC4)->ShowWindow(flag);
- 12 GetDlgItem(IDC_STATIC5)->ShowWindow(flag);
- 13 GetDlgItem(IDC_STATIC6)->ShowWindow(flag);
- 14 GetDlgItem(IDC_STATIC7)->ShowWindow(flag);
- 15 GetDlgItem(IDC_STATIC8)->ShowWindow(flag);
- 16 GetDlgItem(IDC_STATIC9)->ShowWindow(flag);
- 17 GetDlgItem(IDC_STATIC10)->ShowWindow(flag);
- 18 GetDlgItem(IDC_EDIT5)->ShowWindow(flag);
- 19 GetDlgItem(IDC_EDIT6)->ShowWindow(flag);
- 20 GetDlgItem(IDC_EDIT7)->ShowWindow(flag);
- 21 GetDlgItem(IDC_EDIT8)->ShowWindow(flag);
- 22 GetDlgItem(IDC_EDIT9)->ShowWindow(flag);
- 23 GetDlgItem(IDC_EDIT10)->ShowWindow(flag);
- 24 GetDlgItem(IDC_COMBO3)->ShowWindow(flag);
- 25 }
注意:此处ShowWindows()函数带参数,参数的值是bool类型,在界面初始化时需隐藏部分控件。故在该对话框界面对应的CGATHERIN类的OnInitDialog()函数中添加ShowWindows(false),而在【新增】按钮消息函数中添加ShowWindows(true)就实现了按钮的显示效果。