CString No;
No=m_dlg.m_List.GetItemText(i-1,0);
AfxMessageBox(No);
这段程序编译没错
但是No输出后是空的,请教高手如何解决这个问题,让No不为空
8 个解决方案
#1
对话框都没有打开,你怎么能得到内容。。
#2
XDialog m_dlg;
m_dlg.DoModal();
CString No;
No=m_dlg.m_List.GetItemText(i-1,0);
我本来程序是这样的。。。忘了少打一行上来
不过这样也得不到值
m_dlg.DoModal();
CString No;
No=m_dlg.m_List.GetItemText(i-1,0);
我本来程序是这样的。。。忘了少打一行上来
不过这样也得不到值
#3
检查你的i-1是不是越界了
#4
DoModal()都返回了,你下面m_dlg.m_List...这样调居然还不出错,不可思议!
怀疑这是你的源码么?
怀疑这是你的源码么?
#5
真的。。。
我自己也怀疑阿
不过到底是不是这句的问题:m_dlg.m_List.GetItemText(i-1,0)
我自己也怀疑阿
不过到底是不是这句的问题:m_dlg.m_List.GetItemText(i-1,0)
#6
Insert m_dlg;
m_dlg.DoModal();
int m=m_List.InsertItem(0,m_dlg.m_NoEdit);
m_List.SetItemText(m,1,m_dlg.m_NameEdit);
m_List.SetItemText(m,2,m_dlg.m_StyleEdit);
m_List.SetItemText(m,3,m_dlg.m_LengthEdit);
m_List.SetItemText(m,4,m_dlg.m_WidthEdit);
m_List.SetItemText(m,5,m_dlg.m_HeightEdit);
m_List.SetItemText(m,6,m_dlg.m_AmountEdit);
m_List.SetItemText(m,7,m_dlg.m_CaishuEdit);
x++;
x在初始化的时候定于为0;
m_NoEdit等等是另一个对话框的
m_dlg.DoModal();
int m=m_List.InsertItem(0,m_dlg.m_NoEdit);
m_List.SetItemText(m,1,m_dlg.m_NameEdit);
m_List.SetItemText(m,2,m_dlg.m_StyleEdit);
m_List.SetItemText(m,3,m_dlg.m_LengthEdit);
m_List.SetItemText(m,4,m_dlg.m_WidthEdit);
m_List.SetItemText(m,5,m_dlg.m_HeightEdit);
m_List.SetItemText(m,6,m_dlg.m_AmountEdit);
m_List.SetItemText(m,7,m_dlg.m_CaishuEdit);
x++;
x在初始化的时候定于为0;
m_NoEdit等等是另一个对话框的
#7
XDialog m_dlg;
m_dlg.DoModal();
int a=10;
CString No;
CString Name;
CString Style;
CString Length;
CString Width;
CString Height;
CString Amount;
CString Caishu;
int i=m_dlg.x;
while(i>0)
{
No=m_dlg.m_List.GetItemText(i-1,0);
AfxMessageBox(No);
Name=m_dlg.m_List.GetItemText(i-1,1);
Style=m_dlg.m_List.GetItemText(i-1,2);
Length=m_dlg.m_List.GetItemText(i-1,3);
Width=m_dlg.m_List.GetItemText(i-1,4);
Height=m_dlg.m_List.GetItemText(i-1,5);
Amount=m_dlg.m_List.GetItemText(i-1,6);
Caishu=m_dlg.m_List.GetItemText(i-1,7);
insert(a,No,Name,Style,Length,Width,Height,Amount,Caishu);
a=a+10;
i--;
}
m_dlg.DoModal();
int a=10;
CString No;
CString Name;
CString Style;
CString Length;
CString Width;
CString Height;
CString Amount;
CString Caishu;
int i=m_dlg.x;
while(i>0)
{
No=m_dlg.m_List.GetItemText(i-1,0);
AfxMessageBox(No);
Name=m_dlg.m_List.GetItemText(i-1,1);
Style=m_dlg.m_List.GetItemText(i-1,2);
Length=m_dlg.m_List.GetItemText(i-1,3);
Width=m_dlg.m_List.GetItemText(i-1,4);
Height=m_dlg.m_List.GetItemText(i-1,5);
Amount=m_dlg.m_List.GetItemText(i-1,6);
Caishu=m_dlg.m_List.GetItemText(i-1,7);
insert(a,No,Name,Style,Length,Width,Height,Amount,Caishu);
a=a+10;
i--;
}
#8
你用Create创建Dialog试试,Domodal都把程序阻塞了,还怎么得到下面。
#1
对话框都没有打开,你怎么能得到内容。。
#2
XDialog m_dlg;
m_dlg.DoModal();
CString No;
No=m_dlg.m_List.GetItemText(i-1,0);
我本来程序是这样的。。。忘了少打一行上来
不过这样也得不到值
m_dlg.DoModal();
CString No;
No=m_dlg.m_List.GetItemText(i-1,0);
我本来程序是这样的。。。忘了少打一行上来
不过这样也得不到值
#3
检查你的i-1是不是越界了
#4
DoModal()都返回了,你下面m_dlg.m_List...这样调居然还不出错,不可思议!
怀疑这是你的源码么?
怀疑这是你的源码么?
#5
真的。。。
我自己也怀疑阿
不过到底是不是这句的问题:m_dlg.m_List.GetItemText(i-1,0)
我自己也怀疑阿
不过到底是不是这句的问题:m_dlg.m_List.GetItemText(i-1,0)
#6
Insert m_dlg;
m_dlg.DoModal();
int m=m_List.InsertItem(0,m_dlg.m_NoEdit);
m_List.SetItemText(m,1,m_dlg.m_NameEdit);
m_List.SetItemText(m,2,m_dlg.m_StyleEdit);
m_List.SetItemText(m,3,m_dlg.m_LengthEdit);
m_List.SetItemText(m,4,m_dlg.m_WidthEdit);
m_List.SetItemText(m,5,m_dlg.m_HeightEdit);
m_List.SetItemText(m,6,m_dlg.m_AmountEdit);
m_List.SetItemText(m,7,m_dlg.m_CaishuEdit);
x++;
x在初始化的时候定于为0;
m_NoEdit等等是另一个对话框的
m_dlg.DoModal();
int m=m_List.InsertItem(0,m_dlg.m_NoEdit);
m_List.SetItemText(m,1,m_dlg.m_NameEdit);
m_List.SetItemText(m,2,m_dlg.m_StyleEdit);
m_List.SetItemText(m,3,m_dlg.m_LengthEdit);
m_List.SetItemText(m,4,m_dlg.m_WidthEdit);
m_List.SetItemText(m,5,m_dlg.m_HeightEdit);
m_List.SetItemText(m,6,m_dlg.m_AmountEdit);
m_List.SetItemText(m,7,m_dlg.m_CaishuEdit);
x++;
x在初始化的时候定于为0;
m_NoEdit等等是另一个对话框的
#7
XDialog m_dlg;
m_dlg.DoModal();
int a=10;
CString No;
CString Name;
CString Style;
CString Length;
CString Width;
CString Height;
CString Amount;
CString Caishu;
int i=m_dlg.x;
while(i>0)
{
No=m_dlg.m_List.GetItemText(i-1,0);
AfxMessageBox(No);
Name=m_dlg.m_List.GetItemText(i-1,1);
Style=m_dlg.m_List.GetItemText(i-1,2);
Length=m_dlg.m_List.GetItemText(i-1,3);
Width=m_dlg.m_List.GetItemText(i-1,4);
Height=m_dlg.m_List.GetItemText(i-1,5);
Amount=m_dlg.m_List.GetItemText(i-1,6);
Caishu=m_dlg.m_List.GetItemText(i-1,7);
insert(a,No,Name,Style,Length,Width,Height,Amount,Caishu);
a=a+10;
i--;
}
m_dlg.DoModal();
int a=10;
CString No;
CString Name;
CString Style;
CString Length;
CString Width;
CString Height;
CString Amount;
CString Caishu;
int i=m_dlg.x;
while(i>0)
{
No=m_dlg.m_List.GetItemText(i-1,0);
AfxMessageBox(No);
Name=m_dlg.m_List.GetItemText(i-1,1);
Style=m_dlg.m_List.GetItemText(i-1,2);
Length=m_dlg.m_List.GetItemText(i-1,3);
Width=m_dlg.m_List.GetItemText(i-1,4);
Height=m_dlg.m_List.GetItemText(i-1,5);
Amount=m_dlg.m_List.GetItemText(i-1,6);
Caishu=m_dlg.m_List.GetItemText(i-1,7);
insert(a,No,Name,Style,Length,Width,Height,Amount,Caishu);
a=a+10;
i--;
}
#8
你用Create创建Dialog试试,Domodal都把程序阻塞了,还怎么得到下面。