📄 xxsbdlg.cpp
字号:
// xxsbdlg.cpp : implementation file
//
#include "stdafx.h"
#include "xxgl.h"
#include "xxsbdlg.h"
#include "strt.h"
#include "ext.h"
#include "func.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
Cxxsbdlg::Cxxsbdlg(CWnd* pParent /*=NULL*/)
: CDialog(Cxxsbdlg::IDD, pParent)
{
//{{AFX_DATA_INIT(Cxxsbdlg)
m_pyjx = _T("");
m_gdbh = _T("");
m_sbmc = _T("");
//}}AFX_DATA_INIT
}
void Cxxsbdlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Cxxsbdlg)
DDX_Control(pDX, IDC_TREE1, m_tree);
DDX_Control(pDX, IDC_LIST1, m_list);
DDX_Text(pDX, IDC_pyjx, m_pyjx);
DDX_Text(pDX, IDC_gdbh, m_gdbh);
DDX_Text(pDX, IDC_sbmc, m_sbmc);
//}}AFX_DATA_MAP
CBitmap *bitmap;
HBITMAP hbitmap;
bitmap = new CBitmap();
bitmap->LoadBitmap(IDB_qr);
hbitmap = (*bitmap).operator HBITMAP();
CWnd *wn;
wn = GetDlgItem(IDOK);
WPARAM wParam;
LPARAM lParam;
wParam = (WPARAM) LOWORD(BS_LEFT | BS_BITMAP); // style
lParam = MAKELPARAM(TRUE, 0); // redraw flag
wn->SendMessage(BM_SETIMAGE, IMAGE_BITMAP,(long)hbitmap);
HTREEITEM htreeitem;
HTREEITEM h1,h2;
FILE *fpe;
char e_id_buf[50],e_code_buf[50],p_id_buf[50];
char e_name_buf[50],e_abbr_buf[50],a_id_buf[50];
char m_un_buf[50],c_pr_buf[50];
char id_buf[7][3];
int i,j,k,l,n,m;
long order;
int flag,flag1;
char buf1[50];
int parent,ret;
char buf2[10];
char buf[100];
float ff;
int tt;
if (g_come_in_flag == 0){
g_come_in_flag = 1;
fpe = fopen("c:\\xxsbgl\\sbqk.txt","rb");
i = 0;
flag = 0;
m_list.InitStorage(4000,50);
while (flag == 0){
ret = get_a_line(fpe,g_e_id[i]);
if (ret == -1)
break;
get_a_line(fpe,g_e_code[i]);
get_a_line(fpe,g_p_id[i]);
get_a_line(fpe,g_e_name[i]);
get_a_line(fpe,g_e_abbr[i]);
get_a_line(fpe,g_a_id[i]);
get_a_line(fpe,g_m_un[i]);
get_a_line(fpe,g_c_pr[i]);
get_a_line(fpe,buf2);
m_list.AddString(g_e_name[i]);
g_order_of_list[i] = i;
i ++;
}
g_end_sbs = i;
g_cur_rec = 0;
g_cur_sb_search_pos = 0;
g_old_htreeitem = NULL;
fpe = fopen("c:\\xxsbgl\\sbqk.txt","rb");
i = 0;
flag = 0;
g_end_p = g_begin_p = 0;
while (flag == 0){
ret = get_a_line(fpe,g_e_id[i]);
if (ret == -1)
break;
get_a_line(fpe,g_e_code[i]);
get_a_line(fpe,g_p_id[i]);
get_a_line(fpe,g_e_name[i]);
get_a_line(fpe,g_e_abbr[i]);
get_a_line(fpe,g_a_id[i]);
get_a_line(fpe,g_m_un[i]);
get_a_line(fpe,g_c_pr[i]);
get_a_line(fpe,buf2);
g_parent[i] = atoi(buf2);
if (buf2[0] != '-'){
if ((buf2[0] < '0')||(buf2[0] > '9'))
j = 0;
}
order = i;
if (g_parent[i] == -1)
g_htreeitem[i] = m_tree.InsertItem(0,"",0,0,TVIS_BOLD,0xff,order,NULL,TVI_LAST);
else
g_htreeitem[i] = m_tree.InsertItem(0,"",0,0,TVIS_BOLD,0xff,order,g_htreeitem[g_parent[i]],TVI_LAST);
m_tree.SetItemText(g_htreeitem[i],g_e_name[i]);
i ++;
}
g_end_sbs = i;
fpe = fopen("c:\\xxsbgl\\yszm.dat","rb");
if (fpe == NULL)
return;
fread(buf,1,1,fpe);
fread(buf,60,1,fpe);
SetDlgItemText(IDC_sbmc,buf);
fread(buf,20,1,fpe);
SetDlgItemText(IDC_gdbh,buf);
fread(buf,20,1,fpe);
SetDlgItemText(IDC_yqdm,buf);
fread(buf,20,1,fpe);
SetDlgItemText(IDC_scdm,buf);
fread(buf,10,1,fpe);
SetDlgItemText(IDC_rkfs,buf);
fread(buf,20,1,fpe);
SetDlgItemText(IDC_cjpp,buf);
fread(buf,40,1,fpe);
SetDlgItemText(IDC_xhgg,buf);
fread(&ff,4,1,fpe);
sprintf(buf,"%8.2f",ff);
SetDlgItemText(IDC_wpdj,buf);
fread(&ff,4,1,fpe);
sprintf(buf,"%8.2f",ff);
SetDlgItemText(IDC_wpsl,buf);
fread(&ff,4,1,fpe);
sprintf(buf,"%8.2f",ff);
SetDlgItemText(IDC_zje,buf);
fread(buf,40,1,fpe);
SetDlgItemText(IDC_ssbm,buf);
fread(buf,10,1,fpe);
SetDlgItemText(IDC_jbr,buf);
fread(buf,60,1,fpe);
SetDlgItemText(IDC_ghdw,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_ygn,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_ygy,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_ygr,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_rkn,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_rky,buf);
fread(&tt,4,1,fpe);
sprintf(buf,"%d",tt);
SetDlgItemText(IDC_rkr,buf);
fclose(fpe);
g_cur_rec = 0;
}
}
BEGIN_MESSAGE_MAP(Cxxsbdlg, CDialog)
//{{AFX_MSG_MAP(Cxxsbdlg)
ON_EN_CHANGE(IDC_pyjx, OnChangepyjx)
ON_LBN_SELCHANGE(IDC_LIST1, OnSelchangeList1)
ON_NOTIFY(TVN_SELCHANGED, IDC_TREE1, OnSelchangedTree1)
ON_NOTIFY(TVN_SELCHANGING, IDC_TREE1, OnSelchangingTree1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Cxxsbdlg message handlers
void Cxxsbdlg::OnChangepyjx()
{
int i,j,k,flag;
CString str;
char buf[40];
char buf1[50];
long l;
m_list.ResetContent();
i = 0;
k = 0;
GetDlgItemText(IDC_pyjx,buf,20);
l = strlen(buf);
if (l > 0){
for (i=0;i<l;i++){
if ((buf[i] < 'a')||(buf[i] > 'z')){
buf[i] = 0;
SetDlgItemText(IDC_pyjx,buf);
Set_to_item_end(this,IDC_pyjx);
}
}
}
if (strlen(buf) > 10){
buf[10] = 0;
SetDlgItemText(IDC_pyjx,buf);
Set_to_item_end(this,IDC_pyjx);
}
for (i=0;i<g_end_sbs;i++){
flag = 1;
for (j=0;j<strlen(buf);j++){
if (strstr(g_e_abbr[i],buf) != NULL){
flag = 0;
break;
}
}
if (buf[0] == 0){
flag = 0;
}
if (flag == 0){
m_list.AddString(g_e_name[i]);
strcpy(buf1,g_e_name[i]);
g_order_of_list[k] = i;
k ++;
g_last_sel = i;
}
}
if (k == 1){
SetDlgItemText(IDC_sbmc,buf1);
SetDlgItemText(IDC_gdbh,g_a_id[g_last_sel]);
}
}
void Cxxsbdlg::OnSelchangeList1()
{
// TODO: Add your control notification handler code here
int n;
char buf[50];
n = m_list.GetCurSel();
m_list.GetText(n,buf);
SetDlgItemText(IDC_pyjx,g_e_abbr[g_order_of_list[n]]);
SetDlgItemText(IDC_sbmc,buf);
SetDlgItemText(IDC_gdbh,g_a_id[g_order_of_list[n]]);
g_last_sel = n;
}
void Cxxsbdlg::OnOK()
{
// TODO: Add extra validation here
g_xzsb_flag = 1;
free_sbtree(m_tree);
CDialog::OnOK();
}
void Cxxsbdlg::OnSelchangedTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
HTREEITEM htreeitem;
int i,j;
char buf[100];
CString str;
htreeitem = m_tree.GetSelectedItem();
if (g_old_htreeitem != htreeitem){
if (g_old_htreeitem != NULL){
m_tree.SetItemState(g_old_htreeitem,0,0xffff);
}
}
str = m_tree.GetItemText(htreeitem);
strcpy(buf,str.GetBuffer(100));
for (j=0;j<g_end_sbs;j++){
if (strcmp(g_e_name[j],buf) == 0)
i = j;
}
SetDlgItemText(IDC_pyjx,g_e_abbr[i]);
SetDlgItemText(IDC_sbmc,g_e_name[i]);
SetDlgItemText(IDC_gdbh,g_a_id[i]);
*pResult = 0;
}
void Cxxsbdlg::OnSelchangingTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -