亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? aidlg.cpp

?? 滑塊問題求解系統:利用深度優先搜索和廣度優先搜索解決有趣的滑塊問題求解系統。
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
// AIDlg.cpp : 實現文件
//

#include "stdafx.h"
#include "AI.h"
#include "AIDlg.h"
#include ".\aidlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// 用于應用程序“關于”菜單項的 CAboutDlg 對話框

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// 對話框數據
	enum { IDD = IDD_ABOUTBOX };

	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持

// 實現
protected:
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()


// CAIDlg 對話框




CAIDlg::CAIDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CAIDlg::IDD, pParent)	
	, m_maxstep(25)
	, m_sleep(500)
	, m_byhand(false)
	, m_selectval(0)
	, gamestart(false)	
	, search_type(TYPE_ASTAR1)
	, m_heuristic(1)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);	
	memset(pos_begin, -1, sizeof(pos_begin));
	memset(pos_end, -1, sizeof(pos_end));
	memset(pos_begin_return, -1, sizeof(pos_begin_return));
	memset(pos_end_return, -1, sizeof(pos_end_return));
}



void CAIDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);

	for(int i = IDC_INIT_0, j = 0; i <= IDC_INIT_8; ++i, ++j)
		DDX_Control(pDX, i, m_init[j]);
	for(int i = IDC_END_0, j = 0; i <= IDC_END_8; ++i, ++j)
		DDX_Control(pDX, i, m_end[j]);
	for(int i = IDC_HAND_0, j = 1; i <= IDC_HAND_7; ++i, ++j)
		DDX_Control(pDX, i, m_hand[j]);
	for(int i = IDC_CHECK_BEGIN1, j = 1; i <= IDC_CHECK_BEGIN8; ++i, ++j)
		DDX_Control(pDX, i, select_begin[j]);
	for(int i = IDC_CHECK_END1, j = 1; i <= IDC_CHECK_END8; ++i, ++j)
		DDX_Control(pDX, i, select_end[j]);
	DDX_Control(pDX, IDC_CHECK_BEGIN, m_random_begin);
	DDX_Control(pDX, IDC_CHECK_END, m_random_end);
	DDX_Control(pDX, IDC_BUTTON_NEXT, nextstep);
	DDX_Control(pDX, IDC_BUTTON_AUTO, display);
	DDX_Control(pDX, IDC_BUTTON_PREV, prevstep);
	DDX_Control(pDX, IDC_BUTTON_RECOVER, recover);
}

BEGIN_MESSAGE_MAP(CAIDlg, CDialog)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	//}}AFX_MSG_MAP
	ON_BN_CLICKED(IDC_BUTTON_INTRODUCTION, OnBnClickedButtonIntroduction)
	ON_BN_CLICKED(IDC_BUTTON_HAND, OnBnClickedButtonHand)
	ON_BN_CLICKED(IDC_HAND_0, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_1, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_2, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_3, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_4, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_5, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_6, OnBnClickedHand)
	ON_BN_CLICKED(IDC_HAND_7, OnBnClickedHand)
	ON_BN_CLICKED(IDC_END_0, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_1, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_2, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_3, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_4, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_5, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_6, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_7, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_END_8, OnBnClickedEnd)
	ON_BN_CLICKED(IDC_INIT_0, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_1, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_2, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_3, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_4, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_5, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_6, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_7, OnBnClickedInit)
	ON_BN_CLICKED(IDC_INIT_8, OnBnClickedInit)
	ON_BN_CLICKED(IDC_CHECK_HAND, OnBnClickedCheckHand)
	ON_BN_CLICKED(IDC_BUTTON_RANDOM, OnBnClickedButtonRandom)
	ON_BN_CLICKED(IDC_RADIO_DFS, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_BDFS, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_BFS, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_TBFS, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_ASTAR1, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_ASTAR2, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_IDFS, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_RADIO_IDA, OnBnClickedSearchType)
	ON_BN_CLICKED(IDC_BUTTON_BEGIN, OnBnClickedButtonBegin)
	ON_BN_CLICKED(IDC_BUTTON_NEXT, OnBnClickedButtonNext)
	ON_BN_CLICKED(IDC_BUTTON_PREV, OnBnClickedButtonPrev)
	ON_BN_CLICKED(IDC_BUTTON_DEFAULT, OnBnClickedButtonDefault)
	ON_BN_CLICKED(IDC_BUTTON_RECOVER, OnBnClickedButtonRecover)
	ON_BN_CLICKED(IDC_BUTTON_AUTO, OnBnClickedButtonAuto)
	ON_COMMAND(ID_ABOUT, OnAbout)
	ON_COMMAND(ID_GIRL, OnGirl)
	ON_COMMAND(ID_DIGITS, OnDigits)
	ON_COMMAND(ID_, SetParameter)
	ON_COMMAND(ID_ICO, OnIco)
	ON_COMMAND(ID_CREATE, OnCreate)
	ON_COMMAND(ID_HELP, OnHelp)
	ON_COMMAND(ID_COMPARE, OnCompare)
END_MESSAGE_MAP()


// CAIDlg 消息處理程序

BOOL CAIDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// 將\“關于...\”菜單項添加到系統菜單中。

	// IDM_ABOUTBOX 必須在系統命令范圍內。
	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);
		}
	}

	// 設置此對話框的圖標。當應用程序主窗口不是對話框時,框架將自動
	//  執行此操作
	SetIcon(m_hIcon, TRUE);			// 設置大圖標
	SetIcon(m_hIcon, FALSE);		// 設置小圖標

	// TODO: 在此添加額外的初始化代碼


	//設置窗口大小
	GetWindowRect(&rectLarge);
	GetWindowRect(&rectShow);
	GetDlgItem(IDC_EDIT_INTRO)->GetWindowRect(&rectRight);
	GetDlgItem(IDC_SEP)->GetWindowRect(&rectDown);
	rectShow.bottom = rectDown.top;
	rectShow.right = rectRight.left;
	SetWindowPos(NULL,0,0,rectShow.Width(),rectShow.Height(),
			SWP_NOMOVE | SWP_NOZORDER);
	
	//設置各個編輯框初始數據
	SetDlgItemInt(IDC_EDIT_HER, m_heuristic);
	SetDlgItemInt(IDC_EDIT_MAXSTEP, m_maxstep);
	SetDlgItemInt(IDC_EDIT_SLEEP, m_sleep);

	//是否隨機狀態
	m_random_begin.SetCheck(1);
	m_random_end.SetCheck(1);
	( (CButton *) GetDlgItem(IDC_CHECK_NOANSWER) )->SetCheck(1);
	
	//位圖資源
	loadpicture(IDB_BITMAP1);

	//演示按鈕初狀態
	prevstep.EnableWindow(FALSE);
	nextstep.EnableWindow(FALSE);
	recover.EnableWindow(FALSE);
	display.EnableWindow(FALSE);

	//狀態
	SetDlgItemText(IDC_NOWSTEP, "     未開始");
	( (CButton *) GetDlgItem(IDC_RADIO_ASTAR1) )->SetCheck(1);
	search = &astar1;
	SetInstroduction();

	//開始不能生成狀態圖
	GetMenu()->EnableMenuItem(ID_CREATE, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);

	SetClassLong(m_hWnd, GCL_HICON, (LONG)LoadIcon(NULL, MAKEINTRESOURCE(IDR_MAINFRAME) ) );

	return TRUE;  // 除非設置了控件的焦點,否則返回 TRUE
}

void CAIDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// 如果向對話框添加最小化按鈕,則需要下面的代碼
//  來繪制該圖標。對于使用文檔/視圖模型的 MFC 應用程序,
//  這將由框架自動完成。

void CAIDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // 用于繪制的設備上下文

		SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

		// 使圖標在工作矩形中居中
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// 繪制圖標
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

//當用戶拖動最小化窗口時系統調用此函數取得光標顯示。
HCURSOR CAIDlg::OnQueryDragIcon()
{
	return static_cast<HCURSOR>(m_hIcon);
}

void CAIDlg::OnBnClickedButtonIntroduction()
{
	// TODO: 在此添加控件通知處理程序代碼
	CString str;
	if(GetDlgItemText(IDC_BUTTON_INTRODUCTION, str), str == "詳細>>"){
		SetDlgItemText(IDC_BUTTON_INTRODUCTION, "縮略<<");
	}else{
		SetDlgItemText(IDC_BUTTON_INTRODUCTION, "詳細>>");
	}
	if( str == "詳細>>")
		rectShow.right = rectLarge.right;
	else
		rectShow.right = rectRight.left;
	SetWindowPos(NULL,0,0,rectShow.Width(),rectShow.Height(),
			SWP_NOMOVE | SWP_NOZORDER);	
}

void CAIDlg::OnBnClickedButtonHand()
{
	// TODO: 在此添加控件通知處理程序代碼	
	if(!path.empty() && ((CButton *) GetDlgItem(IDC_BUTTON_HAND) )->GetCheck() &&
		IDOK != MessageBox("將要丟失原來信息,是否確認", "確認", MB_OKCANCEL) ){
			( (CButton *) GetDlgItem(IDC_BUTTON_HAND) )->SetCheck(FALSE);			
			return;
	}	
	if( ( (CButton *) GetDlgItem(IDC_BUTTON_HAND) )->GetCheck() ){		
		path.clear();
		rectShow.bottom = rectLarge.bottom;
		prevstep.EnableWindow(FALSE);
		nextstep.EnableWindow(FALSE);
		display.EnableWindow(FALSE);
		recover.EnableWindow(FALSE);
		SetNowstep(0);
	}else
		rectShow.bottom = rectDown.top;
	SetWindowPos(NULL,0,0,rectShow.Width(),rectShow.Height(),
			SWP_NOMOVE | SWP_NOZORDER);	
	GetMenu()->EnableMenuItem(ID_CREATE, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
}

void CAIDlg::OnBnClickedHand()
{
	// TODO: 在此添加控件通知處理程序代碼	
	m_selectval = GetFocus()->GetDlgCtrlID() - IDC_HAND_0 + 1;
}


void CAIDlg::changeBitmap(CButton button[], CButton check[], int pos[], int pos_return[], int val){
	static bool exchange = false;
	if(m_selectval){
		if(pos[m_selectval] == val)
			return;
		if(pos_return[val] != -1){
			if(exchange){
				pos[pos_return[val] ] = pos[m_selectval];
			}else{
				check[pos_return[val] ].SetCheck(0);
				pos[pos_return[val] ] = -1;
			}			
		}
		if(pos[m_selectval] != -1){
			if(exchange){
				button[pos[m_selectval]].SetBitmap(m_bitmap[pos_return[val]]);
				pos_return[pos[m_selectval ] ] = pos_return[val];
			}else{
				button[pos[m_selectval]].SetBitmap(NULL);
				pos_return[pos[m_selectval ] ] = -1;
			}
		}
		if(exchange)
			exchange = false;
		pos[m_selectval] = val;
		pos_return[val] = m_selectval;
		button[val].SetBitmap(m_bitmap[m_selectval]);
		check[m_selectval].SetCheck(1);
		m_selectval = 0;
	}else{
		if(pos_return[val] != -1){
			m_selectval = pos_return[val];
			exchange = true;
		}
	}	
}

void CAIDlg::OnBnClickedEnd()
{
	// TODO: 在此添加控件通知處理程序代碼
	if(!m_byhand && !gamestart)
		changeBitmap(m_end, select_end, pos_end, pos_end_return, GetFocus()->GetDlgCtrlID() - IDC_END_0);	
}

void CAIDlg::OnBnClickedInit()
{
	// TODO: 在此添加控件通知處理程序代碼
	if(!m_byhand && !gamestart)
		changeBitmap(m_init, select_begin, pos_begin, pos_begin_return, GetFocus()->GetDlgCtrlID() - IDC_INIT_0);
	else{
		if(m_byhand){

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩三区| 久久久午夜精品| 狠狠色狠狠色综合| 秋霞影院一区二区| 午夜免费久久看| 午夜欧美一区二区三区在线播放| 中文字幕久久午夜不卡| 欧美国产成人精品| 亚洲欧美一区二区在线观看| 国产精品免费aⅴ片在线观看| 国产亚洲欧洲997久久综合 | 91色.com| 99国产一区二区三精品乱码| 不卡在线视频中文字幕| 91香蕉视频污在线| 欧美日韩色一区| 日韩欧美成人午夜| 精品成人佐山爱一区二区| 久久嫩草精品久久久精品一| 中文字幕va一区二区三区| 亚洲日本韩国一区| 亚洲午夜电影在线观看| 麻豆精品新av中文字幕| 国产真实乱子伦精品视频| 成人黄色大片在线观看| 在线观看日韩一区| 日韩午夜在线观看视频| 国产欧美视频一区二区| 亚洲美女在线国产| 日韩电影在线一区| 成人久久久精品乱码一区二区三区| 91在线播放网址| 欧美另类变人与禽xxxxx| 久久精品视频一区| 亚洲国产精品久久人人爱蜜臀| 久久国产精品99精品国产| 成人动漫在线一区| 欧美一区二区三区视频| 国产精品久久看| 天天色综合成人网| www.欧美日韩| 精品成人一区二区三区四区| 亚洲免费看黄网站| 国产精品一区久久久久| 欧美日高清视频| 1024国产精品| 国产a级毛片一区| 日韩一区二区三区高清免费看看| 国产农村妇女精品| 男女男精品视频网| 色综合久久久网| 国产亚洲欧美一级| 黄一区二区三区| 欧美高清性hdvideosex| 一区二区三区国产| 91亚洲精品久久久蜜桃| 久久综合九色综合97婷婷女人| 亚洲国产裸拍裸体视频在线观看乱了 | 久久国产精品第一页| 欧美视频在线一区| 亚洲欧美激情一区二区| 在线播放欧美女士性生活| 亚洲欧洲99久久| 懂色av一区二区三区免费看| 精品少妇一区二区三区免费观看| 午夜精品福利视频网站| 欧洲亚洲国产日韩| 依依成人精品视频| 99国内精品久久| 亚洲色图.com| 99久久伊人精品| 国产精品亲子伦对白| 国产成人一区二区精品非洲| 26uuu精品一区二区在线观看| 免费高清在线视频一区·| 欧美日韩你懂得| 日韩avvvv在线播放| 欧美人妖巨大在线| 日韩精品电影在线观看| 69精品人人人人| 麻豆国产欧美日韩综合精品二区 | 亚洲精品日韩专区silk| 97国产一区二区| 亚洲视频电影在线| 在线亚洲免费视频| 亚洲图片自拍偷拍| 日韩视频免费观看高清完整版 | 欧美一卡二卡在线| 九九国产精品视频| 国产精品天天摸av网| 91视频一区二区| 视频在线观看91| 精品国产露脸精彩对白| 懂色av一区二区三区免费观看| 成人欧美一区二区三区视频网页| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 秋霞电影网一区二区| 亚洲精品一区二区三区在线观看 | 欧美日韩在线直播| 久久精品99国产精品| 欧美激情一区二区三区在线| 不卡在线观看av| 午夜视频久久久久久| 欧美va日韩va| 99精品热视频| 视频一区二区欧美| 国产片一区二区| 欧美伊人久久久久久久久影院| 男人的j进女人的j一区| 中文字幕中文字幕在线一区 | 亚洲福利一二三区| 欧美不卡一区二区| 色婷婷综合久色| 精品亚洲成a人在线观看 | 欧美日韩在线一区二区| 国产精品亚洲成人| 五月婷婷激情综合网| 欧美韩日一区二区三区四区| 中文字幕乱码久久午夜不卡 | 久久久久成人黄色影片| 91国偷自产一区二区使用方法| 久国产精品韩国三级视频| 亚洲丝袜另类动漫二区| 精品日韩av一区二区| 日本黄色一区二区| 国产一区二区福利视频| 亚洲国产欧美在线| 中文字幕亚洲综合久久菠萝蜜| 欧美日韩精品综合在线| 92精品国产成人观看免费 | 一区二区三区在线免费观看| 精品福利一二区| 欧美一区二区在线免费播放 | 精品亚洲成a人在线观看| 亚洲一区日韩精品中文字幕| 国产精品青草久久| 久久精品一区二区三区四区| 日韩一区二区三区视频在线观看| 欧美性受极品xxxx喷水| 99国产精品视频免费观看| 大桥未久av一区二区三区中文| 日产欧产美韩系列久久99| 夜色激情一区二区| 亚洲伦理在线免费看| 国产精品美女久久久久aⅴ国产馆| 欧美一级理论片| 91精品国产综合久久久久| 精品视频一区二区三区免费| 色综合久久天天综合网| 91久久免费观看| 欧洲av在线精品| 精品视频在线免费| 538在线一区二区精品国产| 欧美日韩日日骚| 欧美一级国产精品| 精品国产免费视频| 久久女同精品一区二区| 国产欧美日韩激情| 欧美国产丝袜视频| 亚洲婷婷在线视频| 亚洲综合清纯丝袜自拍| 亚洲bt欧美bt精品| 日本欧美肥老太交大片| 美女在线一区二区| 国产精品1024| 91麻豆视频网站| 欧美蜜桃一区二区三区| 日韩欧美在线观看一区二区三区| 精品国产露脸精彩对白| 国产精品不卡视频| 亚洲成人久久影院| 久久精品99久久久| 粉嫩一区二区三区性色av| 99久久99久久综合| 欧美电影在线免费观看| 久久亚洲欧美国产精品乐播| 欧美激情一区二区三区全黄 | 麻豆精品精品国产自在97香蕉| 国精产品一区一区三区mba视频| 粉嫩aⅴ一区二区三区四区| 91蝌蚪porny成人天涯| 欧美一区二区成人6969| 日本一区二区综合亚洲| 亚洲高清免费观看高清完整版在线观看| 日韩激情av在线| 成人一区二区三区视频在线观看| 91免费国产在线| 日韩精品一区在线| 最新高清无码专区| 美女网站视频久久| 91网页版在线| 欧美大片国产精品| 国产99一区视频免费| 在线看一区二区| 欧美成人一区二区三区| 亚洲人吸女人奶水| 国产专区欧美精品| 欧美日韩大陆一区二区| 国产精品福利电影一区二区三区四区| 日韩电影在线看|