日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++开发股票软件

發(fā)布時(shí)間:2023/12/20 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++开发股票软件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

VC炒股軟件開發(fā)

文檔說明:

此文檔適合VC++的初學(xué)者,高手也可參考(希望能提出寶貴意見)。

開發(fā)前準(zhǔn)備:

這是一個(gè)根據(jù)股票信息的數(shù)據(jù)繪的幾個(gè)制界面,數(shù)據(jù)來源通信達(dá)軟件的數(shù)據(jù)文件,通常在安裝了通信達(dá)以后并下載數(shù)據(jù)到本地以后就有了。

1.數(shù)據(jù)文件的準(zhǔn)備:

假如你安裝通信達(dá)的目錄是:D:\jcb_gx。那么對(duì)應(yīng)的數(shù)據(jù)文件就在D:\jcb_gx\vipdoc\目錄下,里面每一個(gè)目錄下就是一類股票的數(shù)據(jù),我們開發(fā)這個(gè)界面需要用到的是每個(gè)目錄下的lday目錄下的.lday后綴名的文件。每一個(gè)文件里面存放的是一支滾票的數(shù)據(jù)信息。我當(dāng)時(shí)開發(fā)用到了兩類股票的信息,分別對(duì)應(yīng)的目錄是:D:\jcb_gx\vipdoc\sh\lday和D:\jcb_gx\vipdoc\sz\lday。其實(shí)每類開發(fā)的方法完全一樣,唯一不同就是讀取不同的目錄而已。

2.文件數(shù)據(jù)結(jié)構(gòu):

準(zhǔn)備好數(shù)據(jù)以后,還有一點(diǎn)是必須知道的,不然也沒有辦法進(jìn)行下去,就是文件里面的數(shù)據(jù)格式是怎樣的。因?yàn)槲矣玫氖峭ㄐ胚_(dá)的數(shù)據(jù)文件,所以只需要在www.g.cn查詢通信達(dá)的數(shù)據(jù)格式就可以了,如下:

typedef struct { //共32字節(jié)int date; //4字節(jié) 如20091229int open; //開盤價(jià)int high; //最高價(jià)int low; //最低價(jià)int close; //收盤價(jià)float amount; //成交額int vol; //成交量int reservation; //保留值 } StockData;

詳細(xì)開發(fā)過程(包括我的思路和具體實(shí)現(xiàn)):

1.實(shí)現(xiàn)如上圖的界面,需要做如下事情

(1)讀一個(gè)目錄下的所有文件,并從文件名中提取出相應(yīng)股票的代碼

可行性分析:

首先我們打開的是一個(gè)目錄,然后從這個(gè)目錄中讀出里面所有的文件名,目錄存放的內(nèi)容其實(shí)就是此目錄下的文件名或目錄名。用到兩個(gè)函數(shù),一個(gè)FindFirstFile查找到一個(gè)目錄下的第一個(gè)文件名,另一個(gè)FindNextFile查找下一個(gè)文件名。這樣就可以遍歷一個(gè)目錄下的所有文件名了。

具體實(shí)現(xiàn):

BOOLCTongXinDaView::ReadFileData(LPCSTR path) {//path是這種形式的參數(shù):D:\\jcb_gx\\vipdoc\\sh\\lday\\*m_iCount = 0;WIN32_FIND_DATA tFind = {0};int i = 0;CString strTemp;HANDLE hSearch = ::FindFirstFile(path, &tFind); if (hSearch == INVALID_HANDLE_VALUE) { return FALSE; } //過濾掉.和..文件::FindNextFile(hSearch, &tFind);while (::FindNextFile(hSearch, &tFind)){strTemp.Format("%s",tFind.cFileName);m_File[i].Format("%s",path);//去掉查詢用到的*通配符m_File[i] =m_File[i].Left(m_File[i].GetLength()-1);m_File[i] +=strTemp;//從文件名中提取股票代碼m_FileName[i] =strTemp.Mid(2, 6);i++;}m_iPageCount = i / 31 + 1; //求出需要顯示的總頁面數(shù)m_iLeave = i % 31; //最后一頁顯示的數(shù)據(jù)m_CurrFile = m_File[m_iCount]; //保存選中的文件名::FindClose(hSearch); return TRUE; }

注意事項(xiàng):每一個(gè)目錄下都有這兩個(gè)目錄文件:“.”和“..”。它們分別代表本目錄和父目錄(就是上層目錄),必須過濾掉這兩個(gè)目錄文件。還好每次這兩個(gè)目錄文件總是最先被讀出,所以前兩次讀出來的信息直接不管就可以了。

上面的函數(shù)被相應(yīng)的每一個(gè)菜單項(xiàng)事件調(diào)用,就是針對(duì)不同的股票用一個(gè)菜單項(xiàng)打開。

(2)頁面的顯示:

可行性分析:

先說說我當(dāng)時(shí)需要完成的現(xiàn)實(shí)任務(wù),每頁顯示31行(具體可以變動(dòng),但是31 行效果比較好),顯示3列,第一列索引號(hào),也就是起個(gè)計(jì)數(shù)的作用,第二列就是剛才我們提取到的股票代碼號(hào),第三列隨便填充4個(gè)漢字。還要求畫一條線表示當(dāng)前選中的股票,鼠標(biāo)上下滾動(dòng)和PageDown,PageUp按鍵實(shí)現(xiàn)上下翻頁功能,鼠標(biāo)點(diǎn)擊選中點(diǎn)擊最近的一支股票,按鍵上下鍵也可以移動(dòng)股票選擇。明白了需要實(shí)現(xiàn)的功能,我現(xiàn)在就一步一步來完成。這里需要用到文字輸出函數(shù)DrawText。

具體實(shí)現(xiàn):

void CTongXinDaView::DrawText(CDC *pDC, int page) {CRect rt;GetClientRect(&rt);int high = rt.Width() / 55;int y = high;//控制每一行顯示數(shù)據(jù)的增量CString strLine;int number = 1;pDC->SetBkMode(TRANSPARENT);pDC->SetTextColor(RGB(200, 200, 200));strLine.Format(" 代碼 名稱 日期 開牌價(jià) 最高價(jià) 最低價(jià) 收盤價(jià) 多多 成交量 ");pDC->TextOut(0, 0, strLine);//控制最后一頁只顯示剩余的 if (page == m_iPageCount-1){for (int i=page * SCREENHEIGHT; i<(page*SCREENHEIGHT + m_iLeave); i++){if (i == m_iCount){CPen pen(PS_SOLID, 1, RGB(255, 255, 0));CPen *pOldPen = pDC->SelectObject(&pen);pDC->MoveTo(50, y+high-5);pDC->LineTo(rt.right, y+high-5);pDC->SelectObject(pOldPen);}strLine.Format("%d", i+1);pDC->DrawText(strLine, CRect(0, y, 40, y+high), DT_RIGHT);pDC->DrawText(m_FileName[i], CRect(50, y, 100, y+high), DT_LEFT);pDC->DrawText("長城開發(fā)", CRect(110, y, 180, y+high), DT_LEFT);y = y + high;}} else{for (int i=page * SCREENHEIGHT; i<(page+1)*SCREENHEIGHT; i++){if (i == m_iCount){CPen pen(PS_SOLID, 1, RGB(255, 255, 0));CPen *pOldPen = pDC->SelectObject(&pen);pDC->MoveTo(50, y+high-7);pDC->LineTo(rt.right, y+high-7);pDC->SelectObject(pOldPen);}strLine.Format("%d", i+1);pDC->DrawText(strLine, CRect(0, y, 40, y+high), DT_RIGHT);pDC->DrawText(m_FileName[i], CRect(50, y, 100, y+high), DT_LEFT);pDC->DrawText("長城開發(fā)", CRect(110, y, 180, y+high), DT_LEFT);y = y + high;}} }

注意事項(xiàng):

1.最后一頁數(shù)據(jù)條目不夠,需要特殊處理。

2.輸出函數(shù)用的是DawText而不是TextOut,是為了使輸出對(duì)齊。

3.鼠標(biāo)和按鍵的響應(yīng)只是簡單邏輯處理和顯示不同的數(shù)據(jù)。

(3)分頁顯示和選取當(dāng)前一支股票的實(shí)現(xiàn)思想說明:

可行性分析:

上面已經(jīng)實(shí)現(xiàn)了頁面的顯示,現(xiàn)在說說怎樣控制上下翻頁和鼠標(biāo)鍵盤實(shí)現(xiàn)選中一支股票(我是用一條黃色的線標(biāo)示)。上下翻頁時(shí)通過鍵盤上的PageDown和PageUp,還有鼠標(biāo)滾輪控制的。其實(shí)原理很簡單,只需要我們?cè)谧x目錄下每個(gè)股票文件時(shí)記錄一下這個(gè)目錄下的股票數(shù)量,也就是我們需要顯示的所有行數(shù)。我們一個(gè)常量記錄每一頁顯示的數(shù)目,用總數(shù)除以這個(gè)數(shù)就是總共需要的頁數(shù)。然后用一個(gè)變量記錄當(dāng)前顯示的是第幾頁,上下翻頁就是對(duì)這個(gè)變量的加減操作了。選中一支股票則是根據(jù)我們點(diǎn)擊的鼠標(biāo)的位置來決定,因?yàn)槊恳恍兴嫉捻撁鎸挾仁且粯拥?#xff0c;只需要判斷點(diǎn)擊在哪一行所處的位置就可以了。當(dāng)然也需要用變量記錄選中的是那一只股票,總數(shù)剛才我們也記錄了,所以很容易記錄當(dāng)前的哪一只股票,只是需要注意翻頁后選擇的股票相應(yīng)的加減一頁的顯示的股票數(shù)。最后一點(diǎn)就是注意一些邊界條件的處理。

2.實(shí)現(xiàn)如下圖的界面:

(1)讀取選中的股票文件,并保存以為繪圖使用這些數(shù)據(jù)

可行性分析:

按照固定的數(shù)據(jù)格式把文件中的數(shù)據(jù)讀入到一個(gè)結(jié)構(gòu)體中保存,用fread每次讀入固定長度的數(shù)據(jù)格式接可以了。

具體實(shí)現(xiàn):

/* * 函數(shù)名稱: ReadData * 輸 入: * 輸 出: * 功能描述: 從當(dāng)前文件中讀取數(shù)據(jù) * 全局變量: * 作 者: 吳友強(qiáng) * 日 期: 2009年11月29日 * 修 改: * 日 期: */ void CTongXinDaView::ReadData() {FILE *fp;m_iDataItemCount = -1;//打開當(dāng)前文件if ((fp = fopen(m_CurrFile, "rb")) == NULL){return ;}while (!feof(fp)){m_iDataItemCount++;fread(&m_StockData[m_iDataItemCount],sizeof(StockData),1,fp);//求最大的日期if (m_StockData[m_iDataItemCount].date > m_iMaxDate){m_iMaxDate = m_StockData[m_iDataItemCount].date;}//求最小的日期if (m_iDataItemCount == 0){m_iMinDate = m_StockData[m_iDataItemCount].date;}else if (m_StockData[m_iDataItemCount].date > 0 && m_StockData[m_iDataItemCount].date < m_iMinDate){m_iMinDate = m_StockData[m_iDataItemCount].date;}}m_iDataItemCount--;//去掉最后一條無用的記錄m_iStartDay = m_iDataItemCount;if (m_iDays > m_iDataItemCount){m_iDays = m_iDataItemCount+1;} //以前在這里沒有關(guān)閉文件,所以當(dāng)打開一定數(shù)量的時(shí)候(windows限制的)在打開文件就會(huì)失敗fclose(fp); }

(2)提取當(dāng)前需要顯示的數(shù)據(jù):

可行性分析:

根據(jù)當(dāng)前需要顯示多少天的數(shù)據(jù)來提取,從上面我們從文件里面讀取的數(shù)據(jù)中提取,以后的所謂放大縮小,左右移動(dòng)就是提取不同天的數(shù)據(jù)就是了。

具體實(shí)現(xiàn):

/* * 函數(shù)名稱: GetStockData * 輸 入: days * days: 屏幕需要顯示的天數(shù) * 輸 出: * 功能描述: 得到顯示的數(shù)據(jù)和求取各個(gè)最值 * 全局變量: * 作 者: 吳友強(qiáng) * 日 期: 2009年11月30日 * 修 改: * 日 期: */ void CTongXinDaView::GetStockData(int days) {m_iLowMax = 0;m_iHighMax = 0;m_iVolMax = 0;if (m_sdCurrData != NULL){delete m_sdCurrData;}m_sdCurrData = new StockData[days];for (int i=0; i<days; i++){m_sdCurrData[days-i-1] = m_StockData[m_iStartDay-i-1];//求本次顯示成交量的最大值if (m_sdCurrData[days-i-1].vol > m_iVolMax){m_iVolMax = m_sdCurrData[days-i-1].vol;}//求本次顯示最高值的最大值if (m_sdCurrData[days-i-1].high > m_iHighMax){m_iHighMax = m_sdCurrData[days-i-1].high;} //求本次顯示最低值的最小值if (i == 0){m_iLowMax = m_sdCurrData[days-i-1].low;}else if (m_sdCurrData[days-i-1].low < m_iLowMax){m_iLowMax = m_sdCurrData[days-i-1].low;}} }

(3)得到需要顯示的數(shù)據(jù)以后,我們就可以開始繪圖了

可行性分析:

我們得到需要顯示的數(shù)據(jù)以后,就需要根據(jù)當(dāng)前顯示的寬度和高度來劃分屏幕了,根據(jù)客戶的需求大致需要把屏幕分為上中下三部分,第一部分畫成交量的平均值線和一天中的最高值到最低值的一條豎線,還有開盤價(jià)和收盤價(jià)的矩形圖;第二部分成交總量;第三部分成交價(jià)格除以2,3,4,5刻度控制在-4到4資料的線形圖。首先我們必須確定三部分的高度,然后把3個(gè)坐標(biāo)固定下來并繪畫出來,至于坐標(biāo)的刻度我們可以動(dòng)態(tài)的根據(jù)每次需要顯示的數(shù)據(jù)的最大值和最小值來計(jì)算確定,然后根據(jù)刻度的比例來畫所有的圖形。其中很多需要計(jì)算,具體的情看代碼。下面是整個(gè)系統(tǒng)的黑心部分,具體請(qǐng)看代碼注釋。

具體實(shí)現(xiàn):

/* * 函數(shù)名稱: DrawGraphic * 輸 入: pDC, days * pDC: 畫圖的CDC指針 * days: 顯示數(shù)據(jù)的天數(shù) * 輸 出: * 功能描述: 畫各種坐標(biāo)以及圖形 * 全局變量: * 作 者: 吳友強(qiáng) * 日 期: 2009年11月29日 * 修 改: 吳友強(qiáng) * 日 期: 2009年12月4日 */ void CTongXinDaView::DrawGraphic(CDC *pDC, int days) { //設(shè)置透明繪圖模式pDC->SetBkMode(TRANSPARENT);pDC->SetTextColor(RGB(200, 0 ,0));CRect rt;GetClientRect(&rt);float average;float averPri;float ftemp, ftext;CString str;int i = 0;float xAver;pDC->DrawText("當(dāng)前代碼: " + m_FileName[m_iCount], CRect(0, 0, 200, 20), DT_LEFT);//初始化各個(gè)坐標(biāo)原點(diǎn)m_ptOrigin[0].x = rt.Width()-100;m_ptOrigin[0].y = rt.Height()/8 * 3;m_ptOrigin[1].x = rt.Width()-100;m_ptOrigin[1].y = rt.Height()/4 * 2;m_ptOrigin[2].x = rt.Width()-100;m_ptOrigin[2].y = rt.Height()/4 * 3;//劃分屏幕為三部分CPen penRedSolid(PS_SOLID, 1, RGB(200, 0, 0));CPen *pOldPen = pDC->SelectObject(&penRedSolid);pDC->MoveTo(0, m_ptOrigin[0].y);pDC->LineTo(rt.Width(), m_ptOrigin[0].y);pDC->MoveTo(0, m_ptOrigin[1].y);pDC->LineTo(rt.Width(), m_ptOrigin[1].y);pDC->MoveTo(0, m_ptOrigin[2].y);pDC->LineTo(rt.Width()-100, m_ptOrigin[2].y);pDC->MoveTo(rt.Width()-100, 0);pDC->LineTo(rt.Width()-100, rt.Height());//每一天顯示的寬度xAverxAver = (rt.Width()-100) / (float)days;//平均刻度代表的價(jià)格averPri = (m_iHighMax-m_iLowMax) / 5.0 / 100;//第一條價(jià)格起始線ftemp = m_iLowMax/ 100.0;//刻度線的距離average = m_ptOrigin[0].y / 6.0;CPen penRedDot(PS_DOT, 1, RGB(200, 0, 0));//畫K線坐標(biāo)for (i=0; i<5; i++){pDC->SelectObject(&penRedDot);pDC->MoveTo(0, average*(i+1));pDC->LineTo(rt.Width()-100, average*(i+1));pDC->SelectObject(&penRedSolid);pDC->LineTo(rt.Width()-100+10, average*(i+1));pDC->MoveTo(rt.Width()-100, average*(i+1) + average/2);pDC->LineTo(rt.Width()-100+5, average*(i+1) + average/2);pDC->MoveTo(rt.Width()-100, average*(i+1) + average/4);pDC->LineTo(rt.Width()-100+3, average*(i+1) + average/4);pDC->MoveTo(rt.Width()-100, average*(i+1) + average/4*3);pDC->LineTo(rt.Width()-100+3, average*(i+1) + average/4*3);str.Format("%10.2f", ftemp + averPri * (5-i));pDC->DrawText(str, CRect(rt.Width()-100, average*(i+1)-7, rt.Width(), average*(i+1)+10), DT_LEFT);}CPen penGreen(PS_SOLID, 1, RGB(0, 200, 0));CBrush brush(NULL_BRUSH);CBrush brushGreen(RGB(0, 200, 0));CBrush *pOldBrush = pDC->SelectObject(&brush);//畫每天最低到最高的線,開盤和收盤的矩形for (i=0; i<days; i++){if (m_sdCurrData[i].open <= m_sdCurrData[i].close){pDC->SelectObject(&penRedSolid);pDC->SelectObject(&brush);pDC->MoveTo(xAver * i+xAver/3, average*5- average/averPri*(m_sdCurrData[i].high/100.0-ftemp));pDC->LineTo(xAver * i+xAver/3, average*5- average/averPri*(m_sdCurrData[i].low/100.0-ftemp));pDC->Rectangle(xAver*i, average*5-average/averPri*(m_sdCurrData[i].open/100.0- ftemp),xAver*i+xAver/3*2, average*5-average/averPri*(m_sdCurrData[i].close/100.0- ftemp));}else{pDC->SelectObject(&penGreen);pDC->SelectObject(&brushGreen);pDC->MoveTo(xAver * i+xAver/3, average*5- average/averPri*(m_sdCurrData[i].high/100.0-ftemp));pDC->LineTo(xAver * i+xAver/3, average*5- average/averPri*(m_sdCurrData[i].low/100.0-ftemp));pDC->Rectangle(xAver*i, average*5-average/averPri*(m_sdCurrData[i].close/100.0- ftemp),xAver*i+xAver/3*2, average*5-average/averPri*(m_sdCurrData[i].open/100.0- ftemp));}if (!m_bMouseMove){if (m_iDrawCount == i){m_ptSavePoint.x = xAver * i+xAver/3;m_ptSavePoint.y = average*5-average/averPri*(m_sdCurrData[i].open/100.0-ftemp);}}}//計(jì)算5日平均值和10日平均值int *fiveAverData = new int[days];int *tenAverData = new int[days];for (i=0; i<days; i++){if (i >= 4){fiveAverData[i] = (m_sdCurrData[i].close + m_sdCurrData[i-1].close +m_sdCurrData[i-2].close + m_sdCurrData[i-3].close + m_sdCurrData[i-4].close) / 5;}else{fiveAverData[i] = m_sdCurrData[i].close * 5 / 5;}if (i >= 9){tenAverData[i] = (m_sdCurrData[i].close + m_sdCurrData[i-1].close +m_sdCurrData[i-2].close + m_sdCurrData[i-3].close + m_sdCurrData[i-4].close + m_sdCurrData[i-5].close +m_sdCurrData[i-6].close +m_sdCurrData[i-7].close + m_sdCurrData[i-8].close +m_sdCurrData[i-9].close) / 10;}else{tenAverData[i] = m_sdCurrData[i].close * 10 / 10;} }//畫5日均線和10日均線CPen penWhite(PS_SOLID, 1, RGB(200, 200, 200));CPen penYellow(PS_SOLID, 1, RGB(200, 200, 0));for (i=1; i<days; i++){ pDC->SelectObject(&penWhite);pDC->MoveTo(xAver * (i-1)+xAver/3, average*5-average/averPri*(fiveAverData[i-1]/100.0-ftemp));pDC->LineTo(xAver * i+xAver/3, average*5-average/averPri*(fiveAverData[i]/100.0-ftemp));pDC->SelectObject(&penYellow);pDC->MoveTo(xAver * (i -1)+xAver/3, average*5-average/averPri*(tenAverData[i-1]/100.0-ftemp));pDC->LineTo(xAver * i+xAver/3, average*5-average/averPri*(tenAverData[i]/100.0-ftemp));}//畫柱狀成交量的坐標(biāo)和柱狀圖average = (m_ptOrigin[1].y - m_ptOrigin[0].y) / 5;float averVol = m_iVolMax / 4.0;int temp = m_iVolMax / 4 / 100000 * 1000;//顯示刻度用的臨時(shí)變量pDC->SelectObject(&penRedSolid);pDC->SelectObject(&brush);str.Format("%s", " X100");pDC->Rectangle(rt.Width()-100, m_ptOrigin[1].y-10, rt.Width()-50, m_ptOrigin[1].y+5);pDC->DrawText(str, CRect(rt.Width()-100, m_ptOrigin[1].y-10, rt.Width(), m_ptOrigin[1].y+5), DT_LEFT);for (i=0; i<4; i++){pDC->SelectObject(&penRedDot);pDC->MoveTo(0, m_ptOrigin[0].y + average*(i+1));pDC->LineTo(rt.Width()-100, m_ptOrigin[0].y + average*(i+1));pDC->SelectObject(&penRedSolid);pDC->LineTo(rt.Width()-100+10, m_ptOrigin[0].y + average*(i+1));pDC->MoveTo(rt.Width()-100, m_ptOrigin[0].y + average*(i+1) + average / 2);pDC->LineTo(rt.Width()-100+5, m_ptOrigin[0].y + average*(i+1) + average / 2);str.Format("%10d", temp * (4-i));pDC->DrawText(str, CRect(rt.Width()-100, m_ptOrigin[0].y + average*(i+1)-7, rt.Width(), m_ptOrigin[0].y + average*(i+1)+10), DT_LEFT);}for (i=0; i<days; i++){if (m_sdCurrData[i].open <= m_sdCurrData[i].close){pDC->SelectObject(&penRedSolid);pDC->SelectObject(&brush);}else{pDC->SelectObject(&penGreen);pDC->SelectObject(&brushGreen);}pDC->Rectangle(xAver*i, m_ptOrigin[1].y - m_sdCurrData[i].vol / averVol * average,xAver*i+xAver/3*2, m_ptOrigin[1].y);}//1.畫收盤價(jià)四色線的刻度值average = (m_ptOrigin[2].y - m_ptOrigin[1].y) / 5;str.Format("%8d", 0);pDC->DrawText(str, CRect(rt.Width()-100, m_ptOrigin[2].y-7, rt.Width(), m_ptOrigin[2].y+10), DT_LEFT);for (i=0; i<4; i++){pDC->SelectObject(&penRedDot);pDC->MoveTo(0, m_ptOrigin[1].y + average*(i+1));pDC->LineTo(rt.Width()-100, m_ptOrigin[1].y + average*(i+1));pDC->SelectObject(&penRedSolid);pDC->LineTo(rt.Width()-100+10, m_ptOrigin[1].y + average*(i+1));for (int j=0; j<10; j++){pDC->MoveTo(rt.Width()-100, m_ptOrigin[1].y + average*(i+1) + average / 10 *(j+1));pDC->LineTo(rt.Width()-100+5, m_ptOrigin[1].y + average*(i+1) + average / 10*(j+1));}pDC->SelectObject(&penRedDot);pDC->MoveTo(0, m_ptOrigin[2].y + average*(i+1));pDC->LineTo(rt.Width()-100, m_ptOrigin[2].y + average*(i+1));pDC->SelectObject(&penRedSolid);pDC->LineTo(rt.Width()-100+10, m_ptOrigin[2].y + average*(i+1));for (j=0; j<10; j++){pDC->MoveTo(rt.Width()-100, m_ptOrigin[2].y + average*i + average / 10 *(j+1));pDC->LineTo(rt.Width()-100+5, m_ptOrigin[2].y + average*i + average / 10*(j+1));}str.Format("%8d", 4-i);pDC->DrawText(str, CRect(rt.Width()-100, m_ptOrigin[1].y + average*(i+1)-7, rt.Width(), m_ptOrigin[1].y + average*(i+1)+10), DT_LEFT);str.Format("%8d", -(i+1));pDC->DrawText(str, CRect(rt.Width()-100, m_ptOrigin[2].y + average*(i+1)-7, rt.Width(), m_ptOrigin[2].y + average*(i+1)+10), DT_LEFT);}//2.計(jì)算四線的點(diǎn)值float *fPrice1 = new float[days];float *fPrice2 = new float[days];float *fPrice3 = new float[days];float *fPrice4 = new float[days];for (i=0; i<days; i++){fPrice1[i] = m_sdCurrData[i].close / 100.0 / 2 - m_sdCurrData[i].close / 100 / 2 + m_sdCurrData[i].close / 100 / 2 % 4;fPrice2[i] = m_sdCurrData[i].close / 100.0 / 3 - m_sdCurrData[i].close / 100 / 3 + m_sdCurrData[i].close / 100 / 3 % 4;fPrice3[i] = m_sdCurrData[i].close / 100.0 / 4 - m_sdCurrData[i].close / 100 / 4 + m_sdCurrData[i].close / 100 / 4 % 4;fPrice4[i] = m_sdCurrData[i].close / 100.0 / 5 - m_sdCurrData[i].close / 100 / 5 + m_sdCurrData[i].close / 100 / 5 % 4;}for (i=0; i<days-1; i++){pDC->SelectObject(&penWhite);pDC->MoveTo(xAver*i, m_ptOrigin[2].y-average * fPrice1[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y-average *fPrice1[i+1]);pDC->MoveTo(xAver*i, m_ptOrigin[2].y+average * fPrice1[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y+average *fPrice1[i+1]);pDC->SelectObject(&penYellow);pDC->MoveTo(xAver*i, m_ptOrigin[2].y-average * fPrice2[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y-average *fPrice2[i+1]);pDC->MoveTo(xAver*i, m_ptOrigin[2].y+average * fPrice2[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y+average *fPrice2[i+1]);pDC->SelectObject(&penRedSolid);pDC->MoveTo(xAver*i, m_ptOrigin[2].y-average * fPrice3[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y-average *fPrice3[i+1]);pDC->MoveTo(xAver*i, m_ptOrigin[2].y+average * fPrice3[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y+average *fPrice3[i+1]);pDC->SelectObject(&penGreen);pDC->MoveTo(xAver*i, m_ptOrigin[2].y-average * fPrice4[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y-average *fPrice4[i+1]);pDC->MoveTo(xAver*i, m_ptOrigin[2].y+average * fPrice4[i]);pDC->LineTo(xAver*(i+1), m_ptOrigin[2].y+average *fPrice4[i+1]);}DrawDateText(pDC);//釋放動(dòng)態(tài)分配的內(nèi)存delete fiveAverData;delete tenAverData;delete fPrice1;delete fPrice2;delete fPrice3;delete fPrice4;//還原繪畫環(huán)境pDC->SelectObject(pOldPen);pDC->SelectObject(pOldBrush); }

說明:上面最麻煩的是數(shù)據(jù)的處理,如果處理不好就不能把圖畫到合適的位置,所以計(jì)算的時(shí)候一定要用float,不然就算是很小的數(shù)據(jù)差別都會(huì)造成繪圖不到指定的位置。還有這個(gè)函數(shù)代碼量比較多,是因?yàn)槔L圖都需要用到平均每天的寬度和一些公用的參數(shù),所以就在一個(gè)函數(shù)里完成了。其實(shí)可以寫成很多個(gè)函數(shù)模塊,比如每一個(gè)部分可以寫成一個(gè)函數(shù),然后數(shù)據(jù)計(jì)算可以用專門的函數(shù)封裝。

(3)補(bǔ)充功能,在最下面顯示當(dāng)前鼠標(biāo)對(duì)應(yīng)的日期

/* * 函數(shù)名稱: DrawDateText * 輸 入: pDC * pDC: 繪畫用的CDC指針 * 輸 出: * 功能描述: 顯示日期 * 全局變量: * 作 者: 吳友強(qiáng) * 日 期: 2009年12月02日 * 修 改: * 日 期: */ void CTongXinDaView::DrawDateText(CDC *pDC) {CRect rt;GetClientRect(&rt);float xAver;CString strDate;xAver = (rt.Width()-100) / (float)m_iDays;for (int i=0; i<m_iDays; i++){if ((m_ptDatePoint.x > xAver * i) && (m_ptDatePoint.x < (xAver * i+xAver / 3 *2))){m_iDateCount = i;}}CPen pen(PS_SOLID, 1, RGB(200, 0, 0));CPen *pOldPen = pDC->SelectObject(&pen);CBrush brushBlue(RGB(0, 0, 150));CBrush *pOldBrush = pDC->SelectObject(&brushBlue);pDC->SetTextColor(RGB(200, 200, 200));pDC->MoveTo(0, rt.Height()-15);pDC->LineTo(rt.Width()-100, rt.Height()-15);strDate.Format("%d", m_sdCurrData[m_iDateCount]);strDate.Insert(4, '/');strDate.Insert(7, '/');pDC->Rectangle(m_ptDatePoint.x, rt.Height()-15, m_ptDatePoint.x+75, rt.Height());pDC->DrawText(strDate, CRect(m_ptDatePoint.x, rt.Height()-15, m_ptDatePoint.x+75, rt.Height()), DT_LEFT);pDC->SelectObject(&pOldPen);pDC->SelectObject(&pOldBrush); }

說明:為了顯示出這個(gè)日期,需要記錄當(dāng)前屏幕繪畫了哪些天的圖,然后根據(jù)鼠標(biāo)的坐標(biāo)位置判斷處于哪一天并顯示出來。

(4)圖形放大縮小以及左右平移的實(shí)現(xiàn)思路:

其實(shí)原理都是一樣的,就是根據(jù)需要的天數(shù)顯示,放大就是顯示的天數(shù)比較少,縮小就是多顯示一些天數(shù),左右移動(dòng)就是重新提取一些數(shù)據(jù)。顯示的天數(shù)可以根據(jù)需要按照固定需要按固定的比例放大和縮小。然后就是通過一些按鍵來控制或是鼠標(biāo)控制,其中還有一個(gè)輔助線的設(shè)置比較靠邏輯,需要細(xì)心才能弄好。具體的請(qǐng)參看代碼,有注釋。

3.心得體會(huì):

剛開始的時(shí)候感覺什么都不會(huì),但是我還是勇敢地邁出了自己的第一步,因?yàn)樵谶@幾年的學(xué)習(xí)過程中我發(fā)現(xiàn)自己解決問題的能力提升了很多,所以相信自己能夠完成。然后自己就靜下心來一行一行代碼的寫,經(jīng)過幾天努力,完成了大部分功能,自己的信心也是越來越強(qiáng)。現(xiàn)在這個(gè)程度還算過的去了吧。

4.存在的不足:

由于對(duì)于股票行業(yè)術(shù)語不是很了解,很多變量的命名不是很合理和規(guī)范,代碼的組織也不是很好。

5.得到的幫助與指導(dǎo):

感謝老師提供的思路,特別是對(duì)于所謂的圖形放大和縮小,左右移動(dòng),老師的提醒使我恍然大悟,以后基本上沒有什么太大的困難。就是數(shù)據(jù)的提取問題。

總結(jié)

以上是生活随笔為你收集整理的VC++开发股票软件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

国产剧情一区二区在线观看 | 丝袜美腿av | 日韩欧美视频在线免费观看 | 九九综合久久 | 天天摸天天操天天爽 | 91精彩在线视频 | 日韩黄色在线电影 | av在观看| 日韩免费高清在线观看 | 国产色视频一区二区三区qq号 | 亚洲专区欧美 | 免费色视频网址 | 日韩在线电影一区二区 | 欧美日韩亚洲在线观看 | 一区二区三区四区五区在线 | 亚洲欧洲一级 | 九九热国产视频 | 97福利社| 91精品国产乱码久久桃 | 久久久久美女 | 国产欧美综合视频 | 久久久精品电影 | 久久影院午夜论 | www黄色com| 天堂在线一区 | 国产成人精品网站 | 欧美作爱视频 | 国产精品99久久久久久宅男 | 蜜臀久久99精品久久久久久网站 | 超碰97久久 | 香蕉视频在线看 | 久久成人黄色 | 亚洲精品xx | 一区中文字幕 | 国产精品99久久免费黑人 | 成在人线av | 国内精品久久久久影院日本资源 | 亚洲午夜精品福利 | 久草香蕉在线视频 | 久久福利在线 | 欧美日韩在线视频一区 | 日韩精品一区电影 | 精品视频成人 | 中文一区二区三区在线观看 | 在线高清av | 精品在线一区二区三区 | 免费在线观看污网站 | 五月婷香| 亚洲激情六月 | 午夜美女wwww | 就色干综合| 久久99国产精品 | wwwwwww黄| 97超碰中文字幕 | 草久在线| 久久99视频免费 | 久久一区二区三区国产精品 | 又爽又黄在线观看 | 日韩av不卡在线 | 99高清视频有精品视频 | 在线亚洲人成电影网站色www | 狠狠干电影| 日韩在线观看网址 | 日韩有码中文字幕在线 | 国产成人精品av在线观 | 国产精品精品视频 | 一区二区三区国产欧美 | 一区二区不卡视频在线观看 | 91精品国产92久久久久 | 国产黑丝一区二区 | 成人久久久精品国产乱码一区二区 | 国产成人精品一区在线 | 激情五月婷婷综合网 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 国产精品综合av一区二区国产馆 | 日韩理论视频 | 色综合天天色 | 精品在线免费观看 | 亚洲另类交| 91插插插网站 | 一区二区三区播放 | 97在线免费 | 一本一道久久a久久综合蜜桃 | 99国产在线 | 免费成人短视频 | 色偷偷88888欧美精品久久 | www.久久色| 亚洲丝袜一区 | 国产原创91 | 欧洲精品一区二区 | 超碰日韩 | 一区二区三区国 | 国产色综合 | 中文伊人 | 在线黄频 | 黄色99视频| 狠狠干狠狠久久 | www久久国产| a视频免费看 | 国产成人精品久久二区二区 | 午夜av影院| 免费看精品久久片 | 99re亚洲国产精品 | 中文字幕中文字幕在线中文字幕三区 | 国产男女无遮挡猛进猛出在线观看 | 天天干夜夜爽 | 亚洲成人软件 | 91福利影院在线观看 | 911国产在线观看 | 99视频在线观看一区三区 | 国内丰满少妇猛烈精品播放 | 天天草天天干天天 | 国内精品久久久久国产 | 五月婷婷久久综合 | 狠狠综合久久 | 日韩69av| 日韩综合第一页 | 国产成人精品综合 | 国产精品视频全国免费观看 | 91中文字幕在线 | 久久免费毛片视频 | 少妇搡bbb| 中文在线免费观看 | 欧美日韩国产精品一区二区亚洲 | 狂野欧美激情性xxxx欧美 | 91日韩免费 | 久久免费资源 | 色香蕉在线 | 看v片 | 97成人精品视频在线播放 | 中文字幕在线免费看 | 日韩成人黄色 | 国产日韩欧美在线免费观看 | 69精品视频在线观看 | 亚洲手机av | 欧洲精品在线视频 | 国产剧情亚洲 | 91精品国产99久久久久久红楼 | 日韩激情小视频 | 欧美日韩不卡在线观看 | 最新av电影网址 | 欧美色图亚洲图片 | av三级av| 精品美女在线观看 | 一级a性色生活片久久毛片波多野 | 久久久久久福利 | 国产在线视频资源 | 91色亚洲 | 久久精品视频免费观看 | 久久精品麻豆 | 91激情在线视频 | 久久9999久久 | 国产精品久久在线观看 | 欧美一级片免费在线观看 | 国产精品一区二区三区观看 | 色停停五月天 | 就要干b | 91精品蜜桃 | 国产小视频在线看 | av电影免费 | 又黄又爽的视频在线观看网站 | 日本在线成人 | 亚洲精品看片 | 精品国产一区二区三区久久久蜜臀 | 91九色国产蝌蚪 | 亚洲精品国产精品国自产观看 | 日韩中文字幕免费电影 | 国产中文视频 | 夜夜操狠狠操 | 亚洲在线视频观看 | 九热精品 | 亚洲成人精品国产 | 黄色精品国产 | 亚洲精品午夜久久久 | www.天天综合| 亚洲国产欧美在线看片xxoo | 久久久久伦理电影 | 国产午夜精品av一区二区 | 欧美精品亚州精品 | 日韩av视屏在线观看 | 午夜精品一区二区三区视频免费看 | 国产一区二区高清不卡 | 欧美成年网站 | 国产99久久 | 精品国产伦一区二区三区观看说明 | 五月婷婷六月综合 | 欧美精品久久久久久久亚洲调教 | 久久精品一区二区三区视频 | 狠狠干天天操 | 国产精品久久久久久久久久 | 96av在线视频 | 国产成人av一区二区三区在线观看 | 黄色大片日本免费大片 | 99中文字幕在线观看 | 91大神在线看 | 亚洲成年人免费网站 | 在线播放av网址 | 亚州精品在线视频 | 99av在线视频 | 国产手机av| 欧美日韩国产综合一区二区 | 国产欧美精品一区二区三区四区 | 国产亚洲成av片在线观看 | 精品国产三级 | 一区二区高清在线 | 国产香蕉久久精品综合网 | 黄色一级免费网站 | 一区二区三区四区五区在线 | 在线只有精品 | 天天狠狠操 | 久久不见久久见免费影院 | 欧美日韩在线播放 | 国产视频在线播放 | 在线观看视频免费播放 | 狂野欧美激情性xxxx | av国产网站 | 亚洲视频在线播放 | 国产精品麻豆91 | 狠狠插狠狠操 | .国产精品成人自产拍在线观看6 | 超碰公开在线观看 | 国产一区福利在线 | zzijzzij亚洲日本少妇熟睡 | 亚洲另类视频在线 | 六月天综合网 | 蜜臀av性久久久久av蜜臀妖精 | 亚洲精品中文在线 | 日本电影久久 | 小草av在线播放 | 999久久 | 成人 国产 在线 | 黄色小视频在线观看免费 | 自拍超碰在线 | 久久综合九色综合欧美狠狠 | 久草青青在线观看 | 欧美日韩午夜爽爽 | 婷婷国产在线 | 国产在线观看你懂的 | 久久国产精品久久精品国产演员表 | 精品久久国产精品 | 亚洲精品国产品国语在线 | 亚洲午夜激情网 | 99c视频高清免费观看 | 9在线观看免费 | 久久国产精品99国产 | 特级黄录像视频 | 99热国内精品 | 亚洲精品18日本一区app | 精品二区视频 | 九九久久精品视频 | 国产精品视频久久久 | 婷婷伊人综合 | 亚洲免费av在线播放 | 午夜视频播放 | 亚洲精品电影在线 | 成人免费视频网 | 91免费网址 | 久久国产精品免费观看 | 国产理伦在线 | 在线91播放 | 天天操天天色天天射 | 国产录像在线观看 | 天天射天天射天天射 | 日韩剧 | 欧美精品xxx| 午夜美女视频 | 五月婷亚洲 | 免费视频色 | 免费一级毛毛片 | 久久男人中文字幕资源站 | 99精品视频精品精品视频 | 91黄在线看 | 久久亚洲精品电影 | 在线一级片 | 国产不卡视频在线 | 婷婷伊人综合亚洲综合网 | 色a综合| 亚洲我射av | 久 久久影院| 91丨九色丨首页 | 2019av在线视频 | 91视频在线观看大全 | 国产主播大尺度精品福利免费 | 久草热久草视频 | 99久久99久久免费精品蜜臀 | 婷婷开心久久网 | 麻豆视频免费观看 | 久久久久久国产精品美女 | 色婷婷综合在线 | 综合中文字幕 | 精品国产一区二区三区av性色 | 久久国产精品免费一区二区三区 | 我要看黄色一级片 | 伊色综合久久之综合久久 | 亚洲va在线va天堂 | 色综合天天天天做夜夜夜夜做 | 亚洲伦理精品 | 国产丝袜在线 | 丁香 婷婷 激情 | 久久久久久久久久福利 | 在线免费观看的av | 国产综合福利在线 | 激情视频免费观看 | 国产视频一区在线免费观看 | 九色最新网址 | 久久久久伦理电影 | 欧美在线视频a | 天天综合五月天 | www.啪啪.com | 在线国产一区二区 | 午夜骚影 | 亚洲视频 在线观看 | 久久不卡日韩美女 | 色国产精品| 99中文视频在线 | 永久免费的av电影 | 操操操日日 | 国产 一区二区三区 在线 | 中文字幕一区二区三区久久蜜桃 | 久草在线免费在线观看 | 久久av中文字幕片 | 五月天堂色 | 亚洲国产精品久久久久 | 国产九色视频在线观看 | 欧美精品在线一区 | 久久精品这里都是精品 | 91女人18片女毛片60分钟 | 一区二区三区在线观看免费 | 亚洲在线成人精品 | 久久免费视频在线观看30 | .国产精品成人自产拍在线观看6 | 精品国产黄色片 | 国产高清无av久久 | 久久精品国产一区二区 | 国产分类视频 | 国产日韩精品在线 | 色永久免费视频 | 精品色综合 | 亚洲乱亚洲乱妇 | 天天射网站 | 久久tv| 波多野结衣电影久久 | 国产精品久久久久久久免费观看 | 97超碰人人模人人人爽人人爱 | 在线看片91 | 国产va在线 | 超碰97中文| 成人在线视频免费看 | 日韩在线免费视频观看 | 日韩一二三区不卡 | 国产淫片免费看 | 国产99久久精品一区二区永久免费 | 亚洲aⅴ乱码精品成人区 | 免费观看久久久 | 成人精品视频 | 日本中出在线观看 | 久久免费成人精品视频 | 国产午夜精品一区 | 在线观看日韩免费视频 | 伊人av综合 | 色综合www| 欧美 另类 交 | 日日夜夜天天综合 | av日韩av| 亚洲精品国精品久久99热 | 国内视频1区 | 精品毛片久久久久久 | 成人h动漫在线看 | 九九九在线观看 | 超碰个人在线 | 成人av片在线观看 | 国产一级二级视频 | 亚洲激情国产精品 | 国产免费精彩视频 | 99在线精品视频 | 日日操狠狠干 | 亚洲91精品在线观看 | 久久成人免费 | 免费三级大片 | 久久久999免费视频 日韩网站在线 | 欧日韩在线视频 | 欧美一级片免费播放 | 免费午夜视频在线观看 | 亚洲一区二区高潮无套美女 | 久久综合免费 | 欧美a级片免费看 | 午夜精品剧场 | 亚洲精品在线网站 | 日本一区二区高清不卡 | 97夜夜澡人人双人人人喊 | 国产精品免费高清 | 超碰大片 | 香蕉视频日本 | 久久永久视频 | 欧美久久电影 | 97超碰超碰 | 成人作爱视频 | 1024手机看片国产 | 国产精品一区二区在线 | 欧美久久影院 | 久久手机免费视频 | 欧美激情精品 | 久久久久久高清 | 国产成人黄色片 | 日韩最新在线 | 国产一二三精品 | 欧美日韩高清一区二区 国产亚洲免费看 | 超碰在线98 | 91亚洲国产成人 | 国产激情久久久 | 国产小视频福利在线 | 国产电影黄色av | 这里有精品在线视频 | 波多野结衣综合网 | 黄色三几片| 在线看污网站 | 高清免费在线视频 | 伊人官网 | 久久er99热精品一区二区三区 | 久久网站av| 久久久久久久久久久影院 | 色老板在线视频 | 在线成人一区二区 | 国产精品久久久久久久久久久免费 | 激情五月综合网 | 91久久精品日日躁夜夜躁国产 | 黄色亚洲大片免费在线观看 | 黄色福利网站 | 91精品国产91久久久久久三级 | 正在播放国产一区二区 | 最新婷婷色 | 久久婷婷五月综合色丁香 | 91手机视频| 麻豆国产精品永久免费视频 | 精品免费一区二区三区 | 射久久 | 一区二区欧美在线观看 | 国产精品日韩精品 | 久久尤物电影视频在线观看 | 国产探花在线看 | 伊人天天综合 | 九九热在线观看 | 在线97| 黄色一级片视频 | 亚洲人成综合 | 97狠狠干 | 亚洲 成人 一区 | 午夜久久网 | 日韩色高清 | 丁香花中文在线免费观看 | 1000部18岁以下禁看视频 | 国内久久久久 | 国产精品99久久久精品免费观看 | 久久首页 | 激情婷婷综合 | 亚洲最新视频在线 | 亚在线播放中文视频 | 91人人在线 | 国产久视频 | 国产成人精品久久亚洲高清不卡 | 美女免费网站 | 日韩xxxxxxxxx | 国产玖玖精品视频 | 中文字幕免费一区二区 | 992tv在线成人免费观看 | 五月天久久激情 | 精品免费一区二区三区 | 在线成人性视频 | 久草免费在线观看视频 | 91人人人 | 婷婷久久精品 | 91视频传媒| 欧美国产日韩久久 | 免费观看视频的网站 | 国产又粗又猛又色又黄网站 | 久久久久免费看 | 久久五月婷婷丁香社区 | 国产毛片久久 | 在线视频 91 | 日韩欧美极品 | 日本中文字幕在线电影 | 在线网址你懂得 | 亚洲天堂自拍视频 | 国产五月色婷婷六月丁香视频 | 欧美精品一区二区在线播放 | 日韩av免费大片 | 九月婷婷人人澡人人添人人爽 | 五月婷婷丁香激情 | 色综合五月| 国产精品一区专区欧美日韩 | 亚洲欧洲av | 欧美激情视频一二三区 | 少妇视频在线播放 | 久久综合电影 | 成年人黄色免费看 | 日日麻批40分钟视频免费观看 | 国产一级二级视频 | 婷婷电影在线观看 | 国产精品久久电影观看 | 色香蕉在线 | 精品在线观看国产 | 欧美一级视频在线观看 | 亚洲视频久久久久 | 在线91播放 | 日韩久久久久 | 久久专区| 天天在线免费视频 | www日韩在线 | 五月花婷婷 | 综合天堂av久久久久久久 | 97在线观看视频 | 91精品第一页 | 性色av香蕉一区二区 | 精品中文字幕在线观看 | 久久五月天综合 | 91chinesexxx| 在线有码中文 | 国产一区二区三区免费视频 | 中文字幕二区三区 | 在线免费观看一区二区三区 | 97在线观看免费观看高清 | 四虎在线观看 | 亚洲v欧美v国产v在线观看 | 久久久久免费精品国产小说色大师 | 国产专区视频在线观看 | 男女拍拍免费视频 | 国产成人精品av | 日韩精品欧美视频 | 欧美最猛性xxxxx亚洲精品 | av直接看| 在线免费看片 | 中文字幕在线视频一区 | 亚洲天堂网在线播放 | 免费视频黄 | 97成人在线 | 91av福利视频 | 日日干天天 | 成人一区二区三区在线观看 | 久久综合久久综合这里只有精品 | 婷婷综合激情 | 免费观看福利视频 | 亚洲精品视频在线观看视频 | 99久久久久 | 国产成人亚洲在线观看 | 美女视频a美女大全免费下载蜜臀 | 欧美福利片在线观看 | 国产精品网红直播 | 亚洲精品高清一区二区三区四区 | 精品久久精品 | 久久69av| 欧美人人 | 免费观看第二部31集 | 美女黄频视频大全 | www.久久久.com| 中文字幕一区2区3区 | 激情网色 | 成人av在线电影 | 日韩四虎 | 国产精品久久久久久久久久ktv | 国产一区二区久久久 | 国产丝袜美腿在线 | 99在线精品视频观看 | 久久精品国产第一区二区三区 | 99久久精品日本一区二区免费 | japanesexxxhd奶水 91在线精品一区二区 | 欧美成人精品三级在线观看播放 | 香蕉影视在线观看 | 国产小视频你懂的在线 | 亚洲播放一区 | 成人sm另类专区 | 69视频网站| av免费网页| 久久免费黄色 | 色吊丝在线永久观看最新版本 | 在线看片日韩 | 亚洲更新最快 | 麻豆成人在线观看 | 99视 | 在线va网站 | 日韩专区视频 | 91视频免费看片 | 天天操人人要 | 成人一级免费视频 | 美女网站久久 | 久久桃花网 | 国产精品毛片一区视频播 | 久久精品亚洲一区二区三区观看模式 | 精品国产伦一区二区三区观看体验 | 久久精品99北条麻妃 | av中文天堂 | 日日夜夜天天久久 | 91九色网站| 日日干av| 在线亚州| 国产黄色在线网站 | 五月在线 | 亚洲欧美日韩国产一区二区三区 | 亚洲日本欧美在线 | 日韩在线免费 | 国产精品一码二码三码在线 | 99精品欧美一区二区三区黑人哦 | 日韩在线字幕 | 激情综合啪啪 | 97电影院在线观看 | 欧美做受69| 久久黄色影院 | 久久精品永久免费 | 一区二区三区在线观看免费视频 | 9在线观看免费高清完整版在线观看明 | 亚洲精品一区二区精华 | 久久久免费播放 | 97碰碰精品嫩模在线播放 | 国产又黄又硬又爽 | 96亚洲精品久久 | 亚洲午夜久久久久久久久久久 | 缴情综合网五月天 | 不卡国产在线 | 超碰人人在线 | 日韩专区中文字幕 | 日韩免费三区 | 夜夜高潮夜夜爽国产伦精品 | 91九色精品 | 九九日九九操 | 在线观看91精品视频 | 亚洲精品在线视频播放 | 免费看的黄网站 | 丁香激情综合 | 中文在线www | 免费日韩在线 | 日韩av一区二区三区在线观看 | 国产美女精彩久久 | 日韩欧美国产精品 | 免费精品视频在线 | 亚洲欧美一区二区三区孕妇写真 | 天天射网 | 精品亚洲男同gayvideo网站 | 久久艹在线 | 日韩在线精品视频 | 久久99偷拍视频 | 午夜在线看 | 国产视频首页 | 福利视频一二区 | 99在线观看视频网站 | 久久九九久久九九 | 中文字幕在线影视资源 | 99亚洲精品视频 | 狠狠干夜夜操 | 国产免费xvideos视频入口 | 深爱激情av | 成人av视屏| 午夜精品久久 | 在线免费国产视频 | 91传媒91久久久 | 免费男女羞羞的视频网站中文字幕 | 国产福利一区二区三区视频 | 久久久综合香蕉尹人综合网 | 国产精品高潮呻吟久久av无 | 中文字幕黄色 | 国产亚洲视频中文字幕视频 | 欧美日韩高清免费 | 日韩欧美在线视频一区二区 | 96av视频| 亚洲精品美女 | 天天干夜夜爽 | 中文字幕一区二区三区乱码在线 | 国内外成人免费在线视频 | 91女人18片女毛片60分钟 | 毛片网站在线 | 日韩区在线观看 | 97人人模人人爽人人喊中文字 | 中文字幕中文字幕在线中文字幕三区 | 国产精品剧情在线亚洲 | 国产资源在线视频 | 国产专区日韩专区 | 国产精品男女啪啪 | 欧美日韩视频一区二区 | 亚洲电影黄色 | 欧美另类v | 亚洲午夜不卡 | 久久国产高清视频 | 激情网综合 | 91福利在线导航 | 亚洲精品视频在线观看免费视频 | www.xxx.性狂虐 | 美女免费视频一区 | 日日夜夜精品免费 | 丁香综合激情 | 国产精品www | 亚洲在线视频播放 | 成人午夜电影在线播放 | 日韩欧美综合 | 国产欧美精品一区二区三区 | 国产专区在线播放 | 黄色av成人在线观看 | 中文字幕在线成人 | 国产理伦在线 | 91免费高清观看 | 日韩精品一区二区三区高清免费 | 中文字幕高清视频 | 在线观看亚洲精品 | 激情开心网站 | 在线影视 一区 二区 三区 | 亚洲最大成人免费网站 | 日日夜夜天天操 | 中文字幕久久亚洲 | 精品久久一区二区三区 | 97在线超碰 | 精品成人a区在线观看 | 九九一级片 | 日韩在线观看一区二区 | 婷婷成人综合 | 亚洲区二区 | 国产精品18毛片一区二区 | 91麻豆精品国产91久久久无限制版 | 又湿又紧又大又爽a视频国产 | 亚洲精品久久久久www | 日产av在线播放 | 亚洲视频免费在线观看 | 亚洲日韩精品欧美一区二区 | 国产一级电影免费观看 | 九九99| 五月婷婷视频 | av在线免费观看不卡 | 奇米网777 | 人人澡超碰碰 | 日韩最新av在线 | 亚洲成人av片 | 国产精品久久久久影院日本 | 日韩乱码中文字幕 | 免费av观看 | 色偷偷88888欧美精品久久 | 日本爱爱片| 欧美日韩精品影院 | 午夜日b视频 | 国产一区二区免费 | 国产一级二级三级在线观看 | 午夜电影中文字幕 | 国产精品久久久久久久电影 | 91色一区二区三区 | 一区二区激情视频 | 久久久精品国产免费观看同学 | 国产成人在线网站 | 久久久99精品免费观看app | 国产天天爽 | 国产精品免费一区二区三区 | 麻豆精品在线 | 国产不卡av在线播放 | 欧美亚洲成人xxx | 91在线看网站 | 91亚洲精品在线观看 | 亚洲精品一区二区三区新线路 | 日本性视频 | 日韩特黄一级欧美毛片特黄 | 91福利国产在线观看 | 久草视频首页 | 国产在线精品区 | 亚洲激情国产精品 | 久久激情五月丁香伊人 | 91丨九色丨蝌蚪丰满 | 天天色棕合合合合合合 | 天天天天天操 | 国产精品一区免费看8c0m | 久久久久久久99精品免费观看 | 91中文字幕网 | 精品久久久久久久久久 | 亚洲一区二区三区毛片 | 人人草人 | 亚洲理论在线观看电影 | 久久国产亚洲精品 | 国产成人精品国内自产拍免费看 | 日韩欧美一区二区三区免费观看 | 天天干天天拍天天操天天拍 | 天天插天天爱 | 99视频网址| 91免费高清观看 | 美国三级黄色大片 | 欧美日一级片 | 成人午夜电影在线播放 | 欧美 国产 视频 | 啪一啪在线 | 欧美精品中文 | 97综合视频 | 9在线观看免费高清完整版在线观看明 | 国产中文在线观看 | 丁香激情综合 | 国产免费av一区二区三区 | 国产在线视频资源 | 99久久精品午夜一区二区小说 | 99久久精| 狠狠干,狠狠操 | 久久草草影视免费网 | 狠狠操狠狠操 | 五月婷久久 | 精品中文字幕在线播放 | 亚州成人av在线 | 成人va视频 | 国产色婷婷精品综合在线手机播放 | 天天视频亚洲 | jizz999| 国产免费视频一区二区裸体 | 最近中文字幕免费av | 国产精品一区二区久久精品爱微奶 | 日韩av不卡在线 | 免费97视频| 久久五月婷婷丁香社区 | 国产九九在线 | 麻豆播放 | 五月激情站 | 四虎国产永久在线精品 | 久久精品这里都是精品 | 久久国产精品影视 | 四虎国产精品永久在线国在线 | 99视频久久 | 激情大尺度视频 | 欧美精品一区二区蜜臀亚洲 | 免费看污在线观看 | 国产黄色理论片 | 久久99在线视频 | 午夜影院一级片 | 天天综合久久 | 免费看的国产视频网站 | 日韩免费av在线 | 中文字幕第一页av | 欧美日韩一区二区三区在线免费观看 | 少妇资源站 | 一级一级一片免费 | 免费av一级电影 | 五月婷婷综 | 中文字幕精 | 激情伊人五月天久久综合 | 98涩涩国产露脸精品国产网 | 国产不卡在线看 | 波多野结衣在线中文字幕 | 日韩a级黄色片 | 欧美性性网 | 久久色在线观看 | 波多野结衣电影一区二区三区 | 精品美女在线视频 | 欧美日韩xxxxx | 黄色资源在线 | 久久国产精品电影 | 狠狠色2019综合网 | 中文字幕精| 久青草电影 | 亚洲精品视频国产 | .精品久久久麻豆国产精品 亚洲va欧美 | 午夜久草 | 中文字幕在线视频国产 | 亚洲最新av在线网站 | 亚洲影视九九影院在线观看 | 99久久99久久精品国产片 | 国产精品成人自产拍在线观看 | 国产午夜精品av一区二区 | 欧美精品一区二区性色 | 日韩欧美视频在线 | 92精品国产成人观看免费 | 美女黄久久 | 91亚州 | 日韩电影一区二区三区 | 日韩高清不卡在线 | 国产成人久久av免费高清密臂 | 亚洲综合五月 | 国产精品99免费看 | 日韩毛片在线免费观看 | 欧美一区免费在线观看 | 久久艹艹| 中文字幕 国产专区 | 国产精品一区二区久久精品爱微奶 | 国产黄色片久久 | 日韩一级片大全 | 国产v亚洲v | 欧美国产日韩中文 | 日韩伦理一区二区三区av在线 | 久久国产露脸精品国产 | 国产999精品视频 | www.久艹| 久久久国产精品电影 | 国产成人性色生活片 | 成年人国产精品 | 久久综合欧美 | 91亚洲精品乱码久久久久久蜜桃 | 中文字幕在线观看的网站 | 在线播放91 | 99精品黄色片免费大全 | 中文在线a∨在线 | 在线免费观看黄网站 | 国产九九精品 | 在线91精品 | 91最新视频在线观看 | 亚洲欧美日韩中文在线 | 蜜臀av性久久久久av蜜臀三区 | 久久国产精品99久久久久久进口 | 成人9ⅰ免费影视网站 | 精品一区精品二区高清 | 91免费在线 | 日韩成人免费在线电影 | 国产女人18毛片水真多18精品 | 成人午夜久久 | 99精品小视频 | 国内精品久久久久久久久久清纯 | 国内精品久久久久久久久久 | 色综合网在线 | 久久黄色小说 | 亚洲精品国产精品久久99热 | 日日夜夜人人精品 | 中文字幕中文字幕在线中文字幕三区 | 亚洲精品国偷自产在线99热 | 午夜成人免费影院 | 国产a级片免费观看 | 国产色视频网站 | 激情五月婷婷激情 | 91精品国产高清自在线观看 | 中文字幕色网站 | 美女国内精品自产拍在线播放 | 久久久www成人免费精品 | 国产97碰免费视频 | 二区三区在线视频 | 日韩欧美一区二区三区视频 | 夜夜夜草 | 亚洲女同videos| 国产精品99蜜臀久久不卡二区 | 99久久久久成人国产免费 | 精品国产乱码 | 久久久www成人免费精品 | 国产精品系列在线观看 | av电影免费 | aaa日本高清在线播放免费观看 | 久久五月精品 | 又色又爽又黄 | 亚洲精品日韩在线观看 | 97av在线 | 欧美性视频网站 | 久久精品国产亚洲精品 | 天天摸天天舔天天操 | 97超碰在| 99精品国产99久久久久久福利 | 黄色免费网站 | 久久精品牌麻豆国产大山 | 天天草综合网 | 国产精品少妇 | 日韩免费中文字幕 | 久久精品欧美 | 中文字幕在线国产精品 | av在线网站免费观看 | 国产精品视频免费在线观看 | 中文字幕在线观看视频免费 | 午夜久久久精品 | 国产麻豆精品久久一二三 | 欧美一级片在线观看视频 | 97天天干 | 99精品国产99久久久久久福利 | www.99热精品| 免费观看91视频大全 | 国产不卡免费av | 国产 色 | 少妇av片| 久久都是精品 | 2023年中文无字幕文字 | 亚洲一区二区三区miaa149 | 伊人狠狠干 | 国产精品每日更新 | 日韩久久在线 | 一区二区三区电影 | 免费黄色一区 | 99精品欧美一区二区三区黑人哦 | 国产手机精品视频 | 国产一卡二卡在线 | 成人av高清在线观看 | 久草在线费播放视频 | www.香蕉视频在线观看 | 在线观看你懂的网址 | 亚洲最新视频在线 | 日韩视频在线不卡 | 色操插| 欧美激情精品久久久久 | 91福利小视频 | 午夜10000 | 国产精品久久久久久模特 | 一性一交视频 | 欧美日韩综合在线观看 | 亚洲一区精品二人人爽久久 | 成人黄色大片网站 | 狠狠操狠狠插 | 日韩毛片在线播放 | 日韩三级免费观看 | 国产精品白丝jk白祙 | 人人干,人人爽 | 国内精品久久久久国产 | 在线免费色 | 91福利社在线观看 | av在线官网 | 男女视频久久久 | 国产午夜三级一区二区三桃花影视 | 亚洲精品一区二区三区四区高清 | 天天av在线播放 | 日韩动态视频 | 色综合天天干 | 五月婷婷操 |