Помогите пожалуйста, в общем есть некая программа, ничего в ней особенного, несколько диалогов со всякой фигней.
Только сейчас закончил ее писать, и все работало, да только свернул вижуалку и развернул, а она уже и не работает...
Я просто в шоке, не знаю, что делать, может случайно нажал что-то, я без понятия.
Суть такая: у меня запускается приложение и все работает, кроме одного диалога, то есть по нажатию кнопки, меня должно кидать в этот диалог, но вместо этого выдает ошибку, у меня почти все диалоги идентичные, и другие работают.
Таким образом создаю диалог:
Код:
void CLabaDolgDlg::OnBnClickedButton3()
{
add_adialog aDlg(&h[comp_num]);//Создать локальный объект диалогового окна
aDlg.DoModal();
}
Класс диалога:
Код:
class add_adialog : public CDialog
{
DECLARE_DYNAMIC(add_adialog)
public:
comp* h;
add_adialog(comp* n, CWnd* pParent = NULL); // стандартный конструктор
virtual ~add_adialog();
// Данные диалогового окна
enum { IDD = IDD_add_abon };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // поддержка DDX/DDV
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClickedCancel();
afx_msg void OnBnClickedOk();
CListBox clist_two;
CString t_phone;
CString t_fio;
CString t_num;
float t_balance;
CComboBox sel_ab;
afx_msg void OnCbnSelchangeCombo1();
virtual BOOL OnInitDialog();
};
Собственно сам диалог .cpp :
Код:
IMPLEMENT_DYNAMIC(add_adialog, CDialog)
add_adialog::add_adialog(comp* n, CWnd* pParent /*=NULL*/)
: CDialog(add_adialog::IDD, pParent)
, t_phone(_T(""))
, t_fio(_T(""))
, t_num(_T(""))
, t_balance(0)
{
h = n;
}
add_adialog::~add_adialog()
{
}
void add_adialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
// DDX_LBString(pDX, IDC_text, a_text);
DDX_Control(pDX, IDC_text, clist_two);
DDX_Text(pDX, IDC_EDIT1, t_phone);
DDV_MaxChars(pDX, t_phone, 15);
DDX_Text(pDX, IDC_EDIT2, t_fio);
DDV_MaxChars(pDX, t_fio, 40);
DDX_Text(pDX, IDC_EDIT3, t_num);
// DDX_Control(pDX, IDC_EDIT4, t_balance);
DDX_Text(pDX, IDC_EDIT4, t_balance);
DDX_Control(pDX, IDC_COMBO1, sel_ab);
}
BEGIN_MESSAGE_MAP(add_adialog, CDialog)
ON_BN_CLICKED(IDCANCEL, &add_adialog::OnBnClickedCancel)
ON_BN_CLICKED(IDOK, &add_adialog::OnBnClickedOk)
ON_CBN_SELCHANGE(IDC_COMBO1, &add_adialog::OnCbnSelchangeCombo1)
END_MESSAGE_MAP()
// обработчики сообщений add_adialog
Главный .cpp в котором создается наш не запускающийся диалог:
Код:
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
// Данные диалогового окна
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // поддержка DDX/DDV
// Реализация
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()
// диалоговое окно CLabaDolgDlg
CLabaDolgDlg::CLabaDolgDlg(comp* n, int m, CWnd* pParent /*=NULL*/)
: CDialogEx(CLabaDolgDlg::IDD, pParent)
{
h = n;
comp_num = m;
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CLabaDolgDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST1, clist_one);
DDX_Control(pDX, IDC_COMBO1, comp_select);
}
BEGIN_MESSAGE_MAP(CLabaDolgDlg, CDialogEx)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, &CLabaDolgDlg::OnBnClickedButton1)
ON_LBN_SELCHANGE(IDC_LIST1, &CLabaDolgDlg::OnLbnSelchangeList1)
ON_BN_CLICKED(IDC_BUTTON2, &CLabaDolgDlg::OnBnClickedButton2)
ON_BN_CLICKED(IDC_BUTTON3, &CLabaDolgDlg::OnBnClickedButton3)
ON_CBN_SELCHANGE(IDC_COMBO1, &CLabaDolgDlg::OnCbnSelchangeCombo1)
ON_BN_CLICKED(IDC_BUTTON4, &CLabaDolgDlg::OnBnClickedButton4)
ON_BN_CLICKED(IDC_BUTTON5, &CLabaDolgDlg::OnBnClickedButton5)
ON_BN_CLICKED(IDC_BUTTON6, &CLabaDolgDlg::OnBnClickedButton6)
END_MESSAGE_MAP()