以下对话框初始化代码,不好意思代码写得很乱,有劳大家的眼睛啦,谢谢!BOOL CTongshiDemoDlg::OnInitDialog() { CDialog::OnInitDialog(); // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000); CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } } // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon//此处设断点就不行了。
但我没有用其它的控件呀
[email protected]
那是MFC的源代码!
好啊,先谢啦!我再调试一下,如果还不行我再把代码发给你
因为这个程序还有需要比较多其它东西支持的,所以,你帮我调试的话可能要发挺多东西的to use_id:
但这个是MFC源代码呀
别倒,倒了这个的问题怎么办..................我倒~~~~55555555555不知道是源码,一个无知的我呀..........ASSERT(FALSE);//也就是这行出问题了也是不懂........这一行又如何出错?
DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
#define IDD_ABOUTBOX 100
#define IDS_ABOUTBOX 101
#define IDD_TONGSHIDEMO_DIALOG 102
#define IDR_MAINFRAME 128
#define IDR_TOOLBAR1 129
#define IDR_MENU1 131
#define IDB_BITMAP1 132
#define IDC_HISTORY 1009
#define IDC_LIST1 1010
#define IDC_STATUSBAR 32770
#define ID_BUTTON32771 32771
#define ID_BUTTON32772 32772
#define ID_MENUITEM32773 32773
#define ID_MENUITEM32774 32774// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 133
#define _APS_NEXT_COMMAND_VALUE 32775
#define _APS_NEXT_CONTROL_VALUE 1011
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
{
CDialog::OnInitDialog(); // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000); CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
} // Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon//此处设断点就不行了。
//******************************************************************
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_TOOLBAR1))
{
TRACE0("failed to create toolbar");
}
CRect rcClientStart;
CRect rcClientNow;
GetClientRect(rcClientStart);
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,
AFX_IDW_CONTROLBAR_LAST,
0, reposQuery, rcClientNow);
CPoint ptOffset(rcClientNow.left - rcClientStart.left,
rcClientNow.top - rcClientStart.top); CRect rcChild;
CWnd* pwndChild = GetWindow(GW_CHILD);
while (pwndChild)
{
pwndChild->GetWindowRect(rcChild);
ScreenToClient(rcChild);
rcChild.OffsetRect(ptOffset);
pwndChild->MoveWindow(rcChild, FALSE);
pwndChild = pwndChild->GetNextWindow();
}
CRect rcWindow;
GetWindowRect(rcWindow);
rcWindow.right += rcClientStart.Width() - rcClientNow.Width();
rcWindow.bottom += rcClientStart.Height() - rcClientNow.Height();
MoveWindow(rcWindow, FALSE);
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);//******************************************************************
int m_Widths[5];
int nTotWide; // total width of status bar
CRect rect;
this->GetWindowRect(&rect);
rect.top = rect.bottom- 25;
BOOL m_bRvStatOk= m_StatBar.Create(WS_CHILD|WS_VISIBLE ,rect,this,IDC_STATUSBAR);
if(m_bRvStatOk == NULL)
{ AfxMessageBox ("Status Bar not created!", NULL, MB_OK ); }
CRect rWin; this->GetWindowRect(&rWin);
nTotWide = rWin.right-rWin.left;
m_Widths[0] = 39; //状态条第一部分的宽
m_Widths[1] = (nTotWide-97)/3+39; //状态条第一和二部分的总宽
m_Widths[2] = (nTotWide-97)*2/3+39; //以此类推
m_Widths[3] = nTotWide-58; //表示状态条最右边的部分
m_Widths[4]=-1;
m_StatBar.SetMinHeight(25);
m_StatBar.SetParts( 5, m_Widths);
m_StatBar.SetText(NULL, 0,SBT_OWNERDRAW);
m_StatBar.SetText("沪",1,0);
m_StatBar.SetText("深",2,0);
m_StatBar.SetText("创",3, 0);
COleDateTime tm;
tm=tm.GetCurrentTime();
CString str;
str.Format("%d:%02d:%02d",tm.GetHour(),tm.GetMinute(),tm.GetSecond());
m_StatBar.SetText(str,4,0);
SetTimer(1,1000,NULL);
hBmp = ::LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1));//******************************************************************
TCHAR rgtsz[7][10] = {_T("股票名称"), _T("代码"), _T("昨收"), _T("今开"),_T("最高"),_T("最低"),_T("现价")}; LV_ITEM lvitem;
LV_COLUMN lvcolumn;
CRect rec;
m_ListCtrl.GetWindowRect( &rec );
// Insert columns using the order field
int i;
for(i = 0; i < 7; i++)
{
lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH | LVCF_ORDER;
lvcolumn.fmt = LVCFMT_LEFT;
lvcolumn.pszText = rgtsz[i];
lvcolumn.iSubItem = i;
lvcolumn.iOrder = i;
lvcolumn.cx = rect.Width() / 7;
m_ListCtrl.InsertColumn(i, &lvcolumn);
}
m_fpShow=_fsopen("d:\\vsat\\show128.dbf","rb",SH_DENYNO);
fseek(m_fpShow,0,SEEK_SET);
fread(&m_tagShow,sizeof(sDBF25TAG),1,m_fpShow);
shnum1=m_tagShow.nRecNum-1;
SHOW128 show1;
fseek(m_fpShow,m_tagShow.nHeadLen+m_tagShow.nRecLen,SEEK_SET);
int iItem, iSubItem, iActualItem;
char buffer1[9];
char buffer2[7];
char buffer3[9];
char buffer4[9];
char buffer5[9];
char buffer6[9];
char buffer7[9];
for (iItem = 0; iItem < m_tagShow.nRecNum-1; iItem++) // will now insert the items and subitems into the list view.
{
fread(&show1,sizeof(SHOW128),1,m_fpShow);
StrCopy(buffer1,show1.name,8);
StrCopy(buffer2,show1.code,6);
StrCopy(buffer3,show1.close,8);
StrCopy(buffer4,show1.open,8);
StrCopy(buffer5,show1.phigh,8);
StrCopy(buffer6,show1.plow,8);
StrCopy(buffer7,show1.pnew,8);
memcpy(&show[iItem],&show1,sizeof(SHOW128));
for (iSubItem = 0; iSubItem < 7; iSubItem++)
{
lvitem.mask = LVIF_TEXT | (iSubItem == 0? LVIF_IMAGE : 0);
lvitem.iItem = (iSubItem == 0)? iItem : iActualItem;
lvitem.iSubItem = iSubItem;
lvitem.iImage = NULL;
switch(iSubItem)
{
case 0:
lvitem.pszText=buffer1;break;
case 1:
lvitem.pszText=buffer2;break;
case 2:
lvitem.pszText=buffer3;break;
case 3:
lvitem.pszText=buffer4;break;
case 4:
lvitem.pszText=buffer5;break;
case 5:
lvitem.pszText=buffer6;break;
case 6:
lvitem.pszText=buffer7;break;
default:
break;
} if (iSubItem == 0)
iActualItem = m_ListCtrl.InsertItem(&lvitem);
else
m_ListCtrl.SetItem(&lvitem);
}
}
//******************************************************************
m_fpHq=_fsopen("d:\\vsat\\z_hq.dbf","rb+",SH_DENYNO);
fseek(m_fpHq,0,SEEK_SET);
fread(&m_tagHq,sizeof(sDBF25TAG),1,m_fpHq);
sznum1=m_tagHq.nRecNum;
fseek(m_fpHq,m_tagHq.nHeadLen,SEEK_SET);
for(int ii=0;ii<m_tagHq.nRecNum;ii++)
{
fread(&szhq[ii],sizeof(SZHQ),1,m_fpHq);
}
//*****************************************************************
int ok=gStockDll.Stock_Init(AfxGetMainWnd()->m_hWnd,WM_STOCKDATA,RCV_WORK_SENDMSG);
if(ok>0)
{
char szTitle[10];
CString str;
str.Format("通视接口测试(客户号:%08lX)",gStockDll.GetStockDrvInfo(RI_IDCODE,szTitle));
SetWindowText(str);
// m_bRunFlag=TRUE;
}
else
{
MessageBox("通视驱动未加载!");
}
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
}
还有RC呢?