久久亚洲精品成人_国产精品欧美综合亚洲_亚洲va天堂va欧美ⅴa在线_91色视频在线观看_久久影院亚洲_一级黄色片播放_日韩av在线一区_精品一区二区在线看_老头吃奶性行交视频_日韩免费高清视频_天天操天天爽天天干_日本欧美在线视频

首頁 > 編程 > C++ > 正文

C++ Builder開發(fā)經(jīng)驗幾則 

2019-09-06 23:34:02
字體:
供稿:網(wǎng)友

                        Borland C++ Builder 是Inprise公司繼Delphi之后推出的又一激情之作,它使得C++的可視化編程真正成為了可能,這就為那些既不忍心放棄自己心愛的C++語言,又十分向往Windows平臺下RAD編程的程序員們提供了一個近乎于完美的解決方案。其中堅版本Borland C++ Builder 3.0更是一優(yōu)秀的全能型的開發(fā)工具。從開發(fā)功能上來說,其功能和現(xiàn)在如日中天的Microsoft的Visual C++相比不相上下,而從易用性方面來說,其易用性則要大大優(yōu)于前者,正因為如此,所以Borland C++ Builder3.0在國內(nèi)也逐漸得到了一些程序員的認(rèn)同。但是Borland C++ Builder在國內(nèi)的應(yīng)用情況還遠(yuǎn)不及它的同門師兄Delphi一樣普及,所以相對來說Borland C++ Builder3.0的參考資料也比較少。在這里筆者把自己這一年來使用Borland C++ Builder 3.0所總結(jié)出來的經(jīng)驗?zāi)贸鰩讞l來與大家共饗,只希望能對你在編程時有一定的幫助,讓你少走一些彎路。

  1.全局變量的定義

  這個問題在標(biāo)準(zhǔn)的C/C++編程領(lǐng)域可以說根本不能算是一個問題,但是在Borland C++Builder3.0中卻有些不同。當(dāng)一個程序包含一個定義在獨立頭文件中的全局變量時,程序編譯將會很順利地通過,但是在程序鏈接時則會出現(xiàn)找不到全局變量目標(biāo)模塊的錯誤。這個問題曾令包括筆者在內(nèi)的很多Borland C++ Builder 程序員感到困惑。直到前不久,我才找到了問題出現(xiàn)的原因和解決問題的方法。
  在Borland C++ Builder 3.0中對全局變量的定義采用了定義函數(shù)一樣的方式,即全局變量不僅要有聲明部分,還要有實例定義部分。只有這樣定義過的全局變量在使用時才不會出錯。
  以下舉例說明,在程序中要定義一個全局整型變量i,它的聲明部分寫在Struct.H頭文件中,如下所示:
  #ifndef StructH
  #define StructH
 ?。nclude //此行必須加上
  //------------------
  extern int i;//此處為全局變量i的聲明
  //-------------------
  #endif
  而它的實例定義部分則應(yīng)該寫在Struct.cpp文件中,具體如下:
  //------------------
  #include “struct.h”
 ?。ragma package(smart_init)//此行必須加上。
  //------------------
  int i;//此處為全局變量i的實例定義
  //-------------------
  只有經(jīng)過以上處理后,在程序中使用自定義全局變量時才不會出錯。

  2.使同一個元件的Hint在StatusBar中與動態(tài)提示時有不同的顯示內(nèi)容

  這是我在閱讀VCL源碼時無意中發(fā)現(xiàn)的。雖然是一個小技巧,但是卻很是實用,以下具體舉例說明:
  ⑴:在Borland C++ Builder 3.0中新建一個項目,然后在窗口中加入一個Button元件和一個StatusBar元件,并在對象檢器中將Button元件的ShowHint屬性和StatusBar元件的SimplePanel屬性值都置為true。
  ⑵:將Button元件的Hint屬性置為“這是一個按鈕的提示信息|這是在提示行上顯示的信息”。
 ?、牵涸诖翱陬^文件的窗口類中定義一個函數(shù)原型如下:
  void __fastcall DisplayHint(TObject *Sender);
  然后在CPP文件中編寫這個函數(shù)的代碼如下:
  void __fastcall TForm1::DisplayHint(TObject *Sender)
  {
   StatusBar1->SimpleText=GetLongHint(Application->Hint);
   //應(yīng)用程序在顯示動態(tài)提示信息時,只會顯示“|"以前的部分,而想要顯示“|"以后的部分就只有通過調(diào)用GetLongHint函數(shù)來實現(xiàn)了。
  }
  ⑷:最后再在窗口的構(gòu)造函數(shù)中加入以下一行代碼:
   Application->OnHint=DisplayHint;
 ?、桑罕4娌⒕幾g項目后運行程序。
  這時你會發(fā)現(xiàn),當(dāng)你把鼠標(biāo)移到Button上時,Button上所顯示的動態(tài)提示信息和StatusBar上所顯示的提示信息是不同的。
  下面附送一個為整個應(yīng)用程序安裝動態(tài)提示的程序段。它摘自我正在開發(fā)的一個應(yīng)用程序:
  void __fastcall TForm1::DisplayHint(TObject *Sender)
  {
   // 先對已經(jīng)存在窗口的Tag屬性賦值,然后再通過判斷當(dāng)前窗口的方法來進(jìn)行動態(tài)提示。
   //如果將建的窗口也需要動態(tài)提示的話,那么可先給窗口的Tag屬性賦值,然后再將判斷這個Tag屬性的代碼加入到下面的switch語句中。
   switch(Screen->ActiveForm->Tag)
   {
   case 1 :DFSStatusBar1->Panels->Items[1]->Text=GetLongHint(Application->Hint);break;
   case 5 :Form5->StatusBar1->SimpleText=GetLongHint(Application->Hint);break;
   case 8 :Form8->StatusBar1->SimpleText=GetLongHint(Application->Hint);break;
   case 11:Form11->StatusBar1->SimpleText=GetLongHint(Application->Hint);break;
   }
  }

  3.如何使DateToStr函數(shù)轉(zhuǎn)換后的結(jié)果為長格式的日期字符串

  這是我在實際開發(fā)過程中遇到的一個問題。當(dāng)我把TDateTimePicker元件的Date屬性通過DateToStr函數(shù)轉(zhuǎn)換后賦給一個Edit元件的Text屬性時,Text得到的日期字符串?dāng)?shù)據(jù)只是以yy-mm-dd格式表示的短格式日期字符串?dāng)?shù)據(jù)。千年蟲!眼看就要到二千年了,這怎么能行。本來我想用判斷字符串的辦法來解決這個問題,但是后來經(jīng)過深入思考后發(fā)現(xiàn)該方法有很多的弊端。所以只有用一種通用的方法來解決問題了。在這種情況下,我查找了很多的資料,但是很不幸的是,我所查找的資料中沒有一個提到解決這個問題的方法。無奈之下我打開了Borland C++ Builder 3.0的幫助文件,查看了所有關(guān)于日期的幫助信息。此招果然有效,在幫助文件中我找到了一組用于日期顯示的外部變量,其中有兩個AnsiString型變量,它們分別是ShortDateFormat和LongDateFormat。從它們的名稱就可以看出,它們是用來存儲短日期格式和長日期格式的。當(dāng)時靈機(jī)一動,想通過修改這兩個變量值的方法來解決問題,于是當(dāng)即寫了一段代碼并運行之,才發(fā)現(xiàn)我的想法是可行的。具體代碼段如下:
  void __fastcall TForm7::WriteLongDate(void)
  {
   AnsiString temp=ShortDateFormat;
   ShortDateFormat=LongDateFormat;
   Edit1->Text=DateToStr(DateTimePicker1->Date);
   ShortDateFormat=temp;
  }
  該程序段先保存短日期格式變量,然后將長日期格式變量賦給短日期格式變量,這樣做后就使得當(dāng)前的短日期格式和長日期格式的表示方式相同了。接下來使用日期轉(zhuǎn)字符串函數(shù)DataToStr來將日期數(shù)據(jù)轉(zhuǎn)換為AnsiString型數(shù)據(jù),轉(zhuǎn)換后的AnsiString就已經(jīng)變成了長格式的日期數(shù)據(jù)。最后將先前保存的短日期格式變量恢復(fù)一下即可。就這樣,問題被很好地解決了。同理,如果將長格式日期字符串轉(zhuǎn)換為短格式日期數(shù)據(jù),也可以使用上述方法,只不過要將上面賦值的順序反過來即可。

  4.程序在編譯鏈接時提示找不到某某文件應(yīng)該怎么辦?

  這是一個實際編程工作中經(jīng)常遇到的問題。造成這個問題的原因很多,很難一一介紹,所以我在這里只向大家介紹幾個造成這個問題的典型原因,以及其解決方法。希望能對你在解決這個問題時起到拋磚引玉的作用。
 ?、牛壕幾g器找不到存在的文件。
  這個問題經(jīng)常出現(xiàn)在編譯添加新元件的應(yīng)用程序時。其原因在于項目文件的搜索路徑中并沒有這個新元件所在路徑的信息。這個問題解決起來比較簡單,只需打開Project/Options菜單,在彈出的“選擇”窗口中選擇“Directories/Conditionals"標(biāo)簽頁,然后將新元件的路徑信息添加到包含路徑(Include Path)和庫文件路徑(Library Path)中即可。
 ?、疲壕幾g器要找不存在的文件情況之一
  也許你在編程中有過這樣的遭遇,當(dāng)你編譯并鏈接一個新的程序時,編譯程序竟然會告訴你,需要你已經(jīng)卸載了的元件參加編譯。不知道你當(dāng)時的感覺怎么樣,反正,當(dāng)我還不知道這個問題解決辦法的時候,它總給我一種死去的元件陰魂不散的感覺。其實造成這個問題的原因是由于新元件在安裝時要將其庫文件的信息添加到缺省項目文件中的“編譯鏈接所需庫文件”部分,而元件在卸載時又不能自動將其刪除。這就使得以后所有新建的項目在編譯鏈接時都需要使用這些庫文件。為了解決這個問題,我們就只有對缺省項目文件進(jìn)行編輯了。進(jìn)入Borland C++ Builder 3.0的BIN目錄下,你可以找到一個叫做DEFAULT.BPR的項目文件,這個文件就是缺省項目文件,即所有新建項目文件的父本。打開這個文件后,找到SPARELIBS段,將“死去元件”的“陰魂”Kill掉,即可永絕后患了。
 ?、牵壕幾g器要找不存在的文件情況之二
  這種情況的出現(xiàn)還是與新元件的安裝有關(guān)。當(dāng)你在安裝一些有源碼的Delphi元件時,有可能遇到這樣的情況:編譯器告訴你找不到某某文件,使得挺好的一個元件就是無法使用。其實這個問題的出現(xiàn)多半是由于元件源碼中的一些判斷Delphi版本的預(yù)編譯信息所造成的。由于Delphi的不同版本之間都有著一定的差異,所以很多Delphi元件為了增強(qiáng)自己的可移植性都在元件的源碼中加入了判斷Delphi版本的預(yù)編譯信息。然而Borland C++ Builder 3.0的Delphi編譯器對這些Delphi版本的信息支持并不是很好,這就造成了Borland C++ Builder 3.0在編譯這些元件時通常是“胡子眉毛一把抓”,自然會出錯(值得注意的是,在編譯Delphi元件時的很多其它編譯錯誤也是由于這個原因所造成的)。這時我們就只有使用手工刪除這些不需要的預(yù)編譯信息(一般為{$IFDEF中的內(nèi)容)的方法來解決這個問題了。
  ⑷:編譯器要找不存在的文件情況之三
  有一次一個從BC++轉(zhuǎn)到Borland C++ Builder 3.0的朋友給我打電話問我,說他一時間動了懷舊的情緒,使用Borland C++ Builder 3.0編譯了一個OWL程序。但是在編譯時編譯器卻提示找不到OWL所需要的類庫文件,問我這是為什么。當(dāng)即我便回答了他,告訴他Borland C++ Builder 3.0的默認(rèn)安裝將不安裝對OWL和MFC的支持庫(這在Borland C++ Builder 3.0安裝程序的安裝類型界面中已經(jīng)寫得很明白了,只不過是英文的,他沒有注意看罷了。)。如果需要這些東西的話,就只有在安裝時選擇定制安裝或完全安裝來安裝對其的支持了。如果你也遇到了以上的問題,那么請你照我上面所說的話去做吧。

   5 動態(tài)調(diào)用窗體Form

   在缺省情況下,由File/NewForm生成添加入項目文件中的窗體都具有"AutoCreate"(自動創(chuàng)建)的特性。即只要程序運行,該窗體就存在于內(nèi)存中了,不管當(dāng)前它是否被調(diào)用。具有這種特性的窗體一般適用于窗體屬性比較固定、經(jīng)常被調(diào)用的情況。其優(yōu)點是速度快,缺點是占用內(nèi)存。在實際程序設(shè)計中,會遇見大量類似對話框功能的窗體,它們用于顯示狀態(tài)或輸入信息,僅須在程序中調(diào)用一下,完成其功能就行了,無需常駐內(nèi)存。這時可以通過選擇Project/Options/Forms,將"Auto--Createforms"欄中相應(yīng)的窗體,如Form1,用">"鍵移動到"Availableforms"欄中,并在程序需調(diào)用該窗體處,加入下列語句:
TForm1 *myform=newTForm1(this);
myform->ShowModal();
deletemyform;
 
  6 用Enter鍵控制焦點切換的方法

   在Windows環(huán)境下,要使一個控件取得焦點,可在該控件上用鼠標(biāo)單擊一下,或按Tab鍵將焦點移至該控件上。這種控制焦點切換的方法有時不符合用戶的習(xí)慣。就圖一而言,用戶就希望用Enter鍵,控制焦點由Edit1切換到Edit2。要實現(xiàn)這樣的功能需借助WinAPI函數(shù)SendMessage來完成。方法是:先設(shè)Form1的KeyPreview屬性為true,然后在Form1的OnKeyPress事件中加入如下的代碼。這樣,用戶就可以通過按Enter,鍵控制焦點按定義好的Taborder順序來移動了!

void__fastcallTForm1::

FormKeyPress(TObject*Sender,char&Key)
{
if(Key==VK_RETURN)
  {
  SendMessage(this->Handle,WM_NEXTDLGCTL,0,0);
  Key=0;
  }
}


  7 為TStringGrid的文字加上顏色

TStringGrid是C++Builder提供給用戶的一種字符網(wǎng)格控件。美中不足的是,它沒有提供分別修改各單元字體顏色、大小的方法。其實要為TStringGrid實現(xiàn)這樣功能,只需在程序中稍加處理就行了。方法是自定義一個二維數(shù)組cellbuf,它的下標(biāo)與網(wǎng)格單元列行一一對應(yīng),用于存放各網(wǎng)格單元的顏色、文字等信息。

structCellStru

{

AnsiStringmsg; //文字信息

TColorcolor; //文字顏色

};

CellStrucellbuf[MAXCOL][MAXROW];


----初始化cellbuf后,再在字符網(wǎng)格控件StringGrid1的OnDrawCell響應(yīng)事件中,加入如下的代碼即可。

void__fastcallTForm1::StringGrid1DrawCell

(TObject*Sender,intCol,

intRow,TRect&Rect,TGridDrawStateState)

{

StringGrid1->Canvas->Font->

Color=cellbuf[Col][Row].color;

StringGrid1->Canvas->TextOut(Rect.Left+3,

Rect.Top+3,cellbuf[Col][Row].msg);

}


 8 軟件封面的實現(xiàn)

----現(xiàn)代軟件設(shè)計的流行做法是,在程序運行完成初始化之前,先調(diào)用一幅畫面做為封面,通常是1/4屏幕大小,顯示一下軟件的名稱、作者、版本等信息。要用C++Builder實現(xiàn)這樣的功能,方法很簡單:①自定義一窗體類TSplashForm,將其設(shè)置成"透明窗口",即BorderIcons下的所有選項均置成false,BorderStyle=bsNone,F(xiàn)ormStyle=fsStayOnTop,Position=poScreenCenter;②在TSplashForm窗體上放置一TPanel(相當(dāng)于圖形的鏡框);③在TPanel上放置一TImage控件,調(diào)入所需要的圖形;④對WinMain函數(shù)稍加修改,加入如下所示代碼即可。需要指出的是,這段代碼通過函數(shù)FindWindow,搜索內(nèi)存中是否有窗口標(biāo)題為"Demo"應(yīng)用程序存在,若存在,則退出程序的運行。該功能可防止程序的再次運行。在某些場合這樣設(shè)計是必須的。

WINAPIWinMain(HINSTANCE,HINSTANCE,LPSTR,int)

{

try

{

if(FindWindow(NULL,"Demo")!=0)

{

Application->MessageBox

("程序已經(jīng)運行!","警告",MB_ICONSTOP);

return0;

}



TSplashForm*splash=newTSplashForm(Application);

splash->Show();

splash->Update();



Application->Initialize();

Application->CreateForm(__classid(TForm1),&Form1);



splash->Close();

deletesplash;



Application->Run();

}

catch(Exception&exception)

{

Application->ShowException(&exception);

}

return0;

}


9 如何永久清除DBF中的已被刪除的記錄

----用table->Delete()刪除的DBF記錄,并沒有真正從DBF數(shù)據(jù)庫中被刪除,而僅僅是做上了一個刪除標(biāo)記。如何實現(xiàn)類似dBase中的Pack命令的功能呢?請看下面的代碼。

table->Close();

for(;;)

try

{

table->Exclusive=true;

table->Open();

break;

}

catch(...)

{

}



if(DbiPackTable(table->DBHandle,table->Handle,NULL,szDBASE,true)!=DBIERR_NONE)

Application->MessageBox("不能刪除記錄","錯誤",MB_ICONSTOP);

  最后再說一種最糟的情況。由于你的某種誤操作,造成了某些編譯器在編譯時所需要文件被誤刪除。這時你唯一的解決方法就只有從Borland C++ Builder 3.0的光盤上將你所需要的文件直接拷貝過來。如果你的Borland C++ Builder 3.0只是一個安裝版的話,那么你也就只好準(zhǔn)備一杯清茶或一杯咖啡,在重新安裝Borland C++ Builder 3.0時慢慢品味了。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

欧美另类暴力丝袜| 色哟哟精品观看| 久久电影一区二区| 制服丝袜av成人在线看| 国产精品美女久久久久久久网站| 少妇高潮一区二区三区99小说| 成人免费看片98欧美| 夜夜春很很躁夜夜躁| 精品综合久久久久| 国产原创popny丨九色| 偷拍视频一区二区| 免费看成人午夜电影| 91久久久精品| 国产精品久久久久久久久久新婚| 久热在线中文字幕色999舞| 亚洲国产精品va在线观看黑人| 欧美在线三级电影| 色香蕉成人二区免费| 亚洲国产精品麻豆| 亚洲综合男人的天堂| 国产精品电影院| 国产午夜精品久久久久久免费视 | 亚洲天堂网在线观看| 欧美一级夜夜爽| 91精品国产综合久久精品麻豆 | 精品日韩久久久| 一区二区视频网站| av亚洲精华国产精华精华| www.在线欧美| 中文字幕永久在线观看| 亚洲国产综合久久| 久久亚洲AV无码| 日韩精品视频免费看| 国产精品自拍99| 国产欧美最新羞羞视频在线观看| 一区二区精品视频在线观看| 日韩在线视频观看正片免费网站| avtt天堂在线| 国产一区二区av| 国产精品免费看一区二区三区| 亚洲色图激情小说| 国产99久久久久久免费看| 校园春色 亚洲| 日韩精品久久久久久久酒店| 国产精品久久久久久人| 伊人色综合久久久| 深爱激情五月婷婷| 日韩精品午夜视频| 国产成人精品免费视频网站| av网站免费线看精品| 国产人伦精品一区二区| 综合久久综合久久| 亚洲福利视频三区| 欧美日本免费一区二区三区| 亚洲国产成人久久综合| 最新国产精品亚洲| 青青草国产精品一区二区| 国产日韩中文字幕在线| 久久久久久九九| 国产一二三四区在线观看| 日本老熟妇毛茸茸| aaaaaav| 全程偷拍露脸中年夫妇| 岳乳丰满一区二区三区| 欧美aaaaa成人免费观看视频| 成人精品国产免费网站| 日韩一区欧美小说| 91精品久久久久久久久99蜜臂| 精品丝袜一区二区三区| 久久久噜噜噜久久久| 99re国产视频| 国产va亚洲va在线va| 稀缺呦国内精品呦| 日本三级欧美三级| 亚洲 另类 春色 国产| 97国产一区二区| 欧美日韩国产中文字幕 | 成人午夜免费在线视频| 中文字幕久久av| 深夜福利影院在线观看| 精品区在线观看| 不卡视频在线观看| 色久优优欧美色久优优| 中文字幕综合一区| 国产一区二区精品免费| 国产91对白刺激露脸在线观看| 37p粉嫩大胆色噜噜噜| 日本高清不卡码| 男男成人高潮片免费网站| 欧美极品少妇xxxxⅹ高跟鞋| 欧美日韩激情一区二区三区| 肉色丝袜一区二区| 99九九99九九九99九他书对| 国产精品天天狠天天看| 福利片一区二区三区| 欧美系列日韩一区| 高h调教冰块play男男双性文| 国产综合色视频| japanese中文字幕| www.桃色.com| 日本一本高清视频| 韩国三级中文字幕hd久久精品| 亚洲午夜在线电影| 色妞欧美日韩在线| 日本亚洲导航| 中国一级特黄录像播放| 国产精品毛片一区二区在线看舒淇| 92精品国产成人观看免费| 91精品国产全国免费观看| 26uuu国产精品视频| 大地资源网在线观看免费官网| asian性开放少妇pics| 亚洲精品免费在线观看视频| 亚洲欧美日韩久久| 亚洲毛片在线看| 麻豆av一区| 成人片黄网站色大片免费毛片| 天天色综合久久| 精品久久久久久久久久久久| 18一19gay欧美视频网站| 精品嫩模一区二区三区| 国产亚洲精品av| 成人一级视频在线观看| 亚洲精品国产综合区久久久久久久| 97超级碰碰| 日本一区二区在线免费观看| 天堂蜜桃一区二区三区| 欧美日韩成人综合天天影院 | 亚洲做受高潮无遮挡| 殴美一级特黄aaaaaa| 天天亚洲美女在线视频| 国产精品高精视频免费| 日本一二三区在线| 香蕉久久一区二区三区| 欧美日韩国产综合视频在线观看 | 天天干天天摸天天操| 欧美午夜片在线免费观看 | 国精产品一品二品国精品69xx | 97久久久精品综合88久久| 日韩精品中文字| 综合久久国产| 天堂网中文字幕| 一区二区三区欧美亚洲| 欧美在线视频免费播放| 中文字幕无码毛片免费看| 久久精品系列| 亚洲精品电影网站| 欧美大片免费播放| 免费黄色片视频| 欧美日韩国产页| 成人片在线免费看| 亚洲综合图片一区| 国产调教视频一区| 欧美刺激性大交免费视频| 北条麻妃视频在线| www日本高清| 少妇高潮一区二区三区69| 99视频免费看| 色噜噜一区二区三区| 久久三级福利| 日韩国产欧美在线观看| 国产www免费| 麻豆国产欧美一区二区三区| 蜜桃无码一区二区三区| 老熟妇一区二区三区啪啪| 日本中文在线一区| 久久99精品一区二区三区| 日韩精品视频在线免费观看| 国产a级片免费看| 一级黄色片在线播放| 欧美在线观看一区二区| 乱一区二区三区在线播放| 日韩免费不卡视频| 欧美午夜在线观看| 日韩精品综合在线| 丝袜美腿一区二区三区| 日韩中文有码在线视频| 成年人性生活视频| 久久久精品2019中文字幕之3| 国产精品色婷婷视频| 免费看一级一片| 欧美午夜片在线免费观看| 色综合久久av| 国产欧美日韩综合精品一区二区三区| 欧美xxx久久| 国产视频一区二区视频| 丝袜美腿亚洲一区二区图片| 久久影院免费观看| 91精品人妻一区二区| 一区二区三区四区不卡视频| 亚洲午夜精品一区二区| 日本精品999| 欧美激情视频一区二区三区不卡| a视频免费观看| 婷婷综合久久一区二区三区| 欧美大片免费播放| 国产成人精品一区二| 亚洲一区二区三区乱码aⅴ| 超碰在线97观看| 国产午夜精品全部视频在线播放| 亚洲国产精品狼友在线观看| 亚洲一区免费在线观看| 色一情一区二区三区四区| 日精品一区二区| 国产精品久久久久久久久久新婚 | 91久久免费观看| 日本a在线免费观看| 国产精品456| 成人午夜黄色影院| 中文字幕人妻互换av久久| 色黄久久久久久| 欧美做爰爽爽爽爽爽爽| 亚洲精品wwwww| 中文字幕一区二区人妻在线不卡 | 男人操女人下面视频| 亚洲欧美电影院| 乱熟女高潮一区二区在线| 国产另类ts人妖一区二区| 99视频免费观看| 久久亚洲风情| 91天堂在线视频| 好男人www在线视频| 国产精品99久久久久久www| 一级黄色片视频| 欧洲精品在线视频| 97人妻精品一区二区三区动漫| 欧美激情第6页| 无码免费一区二区三区| 欧美激情在线观看| 中文字幕欧美人妻精品| 久久免费视频在线观看| 中文字幕第一页在线播放| 国语自产在线不卡| 日本成人一级片| 97视频在线观看免费| 中文字幕有码无码人妻av蜜桃| 欧美人交a欧美精品| av黄色在线播放| 欧美日韩成人在线观看| 国产区一区二区三| 欧美劲爆第一页| 99久久精品国产一区二区成人| 国产成人精品综合久久久| 日韩一区二区三区不卡| 成人欧美一区二区三区视频xxx| 极品少妇xxxx精品少妇| 鲁丝一区鲁丝二区鲁丝三区| 99精品国产热久久91蜜凸| 福利视频免费在线观看| 一区二区三区在线观看动漫| www.日本xxxx| 在线日韩av片| 午夜影院黄色片| 亚洲网站视频福利| 黄色av网站免费观看| 国产91在线播放九色快色| 天天综合永久入口| 看高清中日韩色视频| 久久久91精品国产一区二区精品| 欧美日韩在线一| 在线视频国内自拍亚洲视频| 337人体粉嫩噜噜噜| www.欧美精品| 99草在线视频| 欧美婷婷久久| 综合久久久久久| 欧美成人三级伦在线观看| 日韩毛片在线观看| 一区二区乱子伦在线播放| av蓝导航精品导航| 国产欧美一区二区精品秋霞影院 | 一区二区三区视频| 亚洲永久免费av| 亚洲一区视频在线播放| 久久久精品国产一区二区| 精品国产av一区二区| 美脚丝袜一区二区三区在线观看| 中文字幕av一区二区三区高| 天天干天天曰天天操| 亚洲第一页在线| 最近中文字幕在线免费观看| 国产伦精品一区二区三区在线 | 亚洲最新视频在线观看| 公侵犯人妻一区二区三区| 欧美成人精品激情在线观看 | 亚洲 欧美 日韩在线| 亚洲国产精品福利| 中文字幕乱码视频| 国产精品h在线观看| 久草中文综合在线| 亚洲激情图片网| 激情久久综合网| 无尽裸体动漫2d在线观看| 超碰国产精品久久国产精品99| 91福利国产成人精品照片| 亚洲欧美综合视频| 亚洲偷欧美偷国内偷| 亚洲一本大道在线| 好吊视频一区二区三区| 中文字幕天堂av| 精品国产三级电影在线观看| 99re6热在线精品视频| 欧美群妇大交群中文字幕| 亚洲精品一区二区18漫画| 香蕉加勒比综合久久| 三上悠亚在线一区| 亚洲成人综合在线| 蜜桃视频最新网址| 亚洲人成网站免费播放| 国产精品视频久久久久久久| 欧洲成人免费视频| 久久久国产午夜精品| www.99r| 精品国产一区二区三区在线观看| 久久精品系列| 亚洲精品视频三区| 欧美在线视频一区二区| 国产婷婷成人久久av免费高清| 日韩欧美在线免费| 国产精品1024| 日韩精品一二三区| 四虎成人永久免费视频| 久久99久久久久久| 精品欧美一区二区在线观看视频| 国产午夜精品久久久| 国产美女在线观看一区| jizz中文字幕| 亚洲爆乳无码精品aaa片蜜桃| 欧美乱妇23p| 久久精品国产久精国产爱| 69av视频在线| 污色网站在线观看| 国产伦精品一区二区三区| 7799精品视频| 国产在线一区二区综合免费视频| 亚洲精品理论片| 日韩国产精品一区二区三区| 欧美一区二区三区在线观看| 成人在线综合网站| 二区视频在线观看| 在线观看av免费观看| 日韩精品无码一区二区三区| 久久久久久国产免费| 91麻豆免费视频| 日韩电影在线观看一区| 国产视频一区二区三| 99热99这里只有精品| 麻豆传媒在线看| 成人免费网站入口| 欧美一级爱爱| 久久久精品在线| 欧美精品xxxxbbbb| 亚洲天天做日日做天天谢日日欢| 国产chinasex对白videos麻豆| 亚洲国产第一区| 小泽玛利亚av在线| 色先锋资源久久综合5566| www亚洲一区| 神马久久久久久久 | 777久久精品一区二区三区无码| 日韩高清欧美高清| 久久久久久久av麻豆果冻| 久草免费新视频| av天堂永久资源网| 国产精品日韩精品| 91精品国产综合久久香蕉麻豆 | 日韩第一页在线| 国产精品视频一二| 国产美女永久免费| 国产高清成人久久| 日日夜夜精品网站| 久久久久亚洲精品国产| 欧美午夜电影在线| 国产一二精品视频| www.久久网| 在线免费观看成年人视频| 99re8这里只有精品| 国产精品777| 亚洲精品大尺度| 怡红院av一区二区三区| 免费人成在线不卡| 国内免费精品视频| 少妇高潮一69aⅹ| 亚洲精品一区国产精品| 欧美一区二区.| 欧美大胆人体bbbb| 亚洲日本va午夜在线影院| 久久先锋影音| 秋霞av一区二区三区| 菠萝菠萝蜜网站| 人妻av中文系列| 精品国产乱码久久久久久蜜柚| 欧美精品一区三区| 欧美一区欧美二区| 亚洲精品一二三| 国产美女精品人人做人人爽 | 日本久久电影网| 久久综合国产精品| 婷婷丁香一区二区三区| 全部毛片永久免费看| 国产精品成人无码专区| 久久国产精品视频在线观看| 久久av一区二区三区漫画| 18性欧美xxxⅹ性满足| 亚洲免费影视第一页| 欧美日韩视频专区在线播放| 亚洲免费观看在线观看| 国产suv精品一区二区883| 美女日韩在线中文字幕| 91尤物国产福利在线观看|