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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

TEdit扩展:做成多按钮的Edit,可用作浏览器地址栏

發布時間:2023/12/19 HTML 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TEdit扩展:做成多按钮的Edit,可用作浏览器地址栏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

TEdit是經常使用的組件,但其功能不能滿足開發要求,雖然高版本的Delphi已經提供一個TButtonEdit組件,但這個組件提供的按鈕數量較少,于是本人模仿這個組件,做了一個支持4個按鈕的TEdit擴展組件,在Delphi XE下測試通過。

主要代碼如下:

unit UWSIEAddress;

interface

uses
? SysUtils, Classes, Controls, StdCtrls,ImgList,Messages,Menus,themes,Forms,
? Windows,Dialogs,RegularExpressions,Registry,ShellAPI;

const
? AltID=111;
? ShiftID=1001;
? CtrlID=11117;
? ASID=1112;
? ACID=11228;
? SCID=12118;
? ASCID=12229;

//這些值是隨機定義的,用于判斷那些輔助鍵按下

type
? TOnUrlSelectedEvent = procedure(Sender: TObject; Url: WideString; var Cancel: boolean) of object;

? TCustomUWSIEAddress = class;

? TEditButton = class(TPersistent)
? strict private
??? type
????? TButtonState = (bsNormal, bsHot, bsPushed);
????? TGlyph = class(TCustomControl)
????? private
??????? FButton: TEditButton;
??????? FState: TButtonState;
????? protected
??????? procedure Click; override;
??????? procedure CreateWnd; override;
??????? procedure Paint; override;
??????? procedure WndProc(var Message: TMessage); override;
??????? procedure CMHintShow(var Message: TCMHintShow); message CM_HINTSHOW;
????? public
??????? constructor Create(AButton: TEditButton); reintroduce; virtual;
????? end;
? protected
??? type
????? TButtonPosition = (bpLeft, bpRightRight,bpRightMiddle,bpRightLeft);
? strict private
??? FDisabledImageIndex: TImageIndex;
??? FDropDownMenu: TPopupMenu;
??? FEditControl: TCustomUWSIEAddress;
??? FGlyph: TGlyph;
??? FHotImageIndex: TImageIndex;
??? FImageIndex: TImageIndex;
??? FPosition: TButtonPosition;
??? FPressedImageIndex: TImageIndex;
??? function GetEnabled: Boolean;
??? function GetCustomHint: TCustomHint;
??? function GetHint: string;
??? function GetImages: TCustomImageList;
??? function GetVisible: Boolean;
??? procedure SetDisabledImageIndex(const Value: TImageIndex);
??? procedure SetEnabled(const Value: Boolean);
??? procedure SetCustomHint(const Value: TCustomHint);
??? procedure SetHint(const Value: string);
??? procedure SetHotImageIndex(const Value: TImageIndex);
??? procedure SetImageIndex(const Value: TImageIndex);
??? procedure SetPressedImageIndex(const Value: TImageIndex);
??? procedure SetVisible(const Value: Boolean);
? protected
??? function GetOwner: TPersistent; override;
??? procedure UpdateBounds; dynamic;
??? property EditControl: TCustomUWSIEAddress read FEditControl;
??? property Glyph: TGlyph read FGlyph;
??? property Images: TCustomImageList read GetImages;
??? property Position: TButtonPosition read FPosition;
? public
??? constructor Create(EditControl: TCustomUWSIEAddress; APosition: TButtonPosition); reintroduce; virtual;
??? destructor Destroy; override;
??? property Visible: Boolean read GetVisible ;
? published
??? property CustomHint: TCustomHint read GetCustomHint write SetCustomHint;
??? property DisabledImageIndex: TImageIndex read FDisabledImageIndex write SetDisabledImageIndex default -1;
??? property DropDownMenu: TPopupMenu read FDropDownMenu write FDropDownMenu;
??? property Enabled: Boolean read GetEnabled write SetEnabled default True;
??? property Hint: string read GetHint write SetHint;
??? property HotImageIndex: TImageIndex read FHotImageIndex write SetHotImageIndex default -1;
??? property ImageIndex: TImageIndex read FImageIndex write SetImageIndex default -1;
??? property PressedImageIndex: TImageIndex read FPressedImageIndex write SetPressedImageIndex default -1;
? end;


? TEditButtonClass = class of TEditButton;

? TCustomUWSIEAddress = class(TCustomEdit)
? private
??? { Private declarations }
??? FShiftKeyID:Integer;
??? FCanvas: TControlCanvas;
??? FImages: TCustomImageList;
??? FImageChangeLink: TChangeLink;
??? FLeftButton: TEditButton;
??? FRightButtonRight: TEditButton;
??? FRightButtonMiddle: TEditButton;
??? FRightButtonLeft: TEditButton;
??? FFavIconsSavePath:String;
??? FOneKeyAddressFile:String;
??? FAddressAutoFixFile:String;
??? FOneKeyAddress:TStrings;
??? FAddressAutoFix:TStrings;
??? FTypedUrls:TStringList;
??? FOnUrlSelected: TOnUrlSelectedEvent;
??? function GetOneKeyAddress: TStrings;
??? function GetAddressAutoFix: TStrings;
??? function AdjustTextHint(Margin: Integer; const Value: string): string;
??? procedure SetOneKeyAddress(Value: TStrings);
??? procedure SetAddressAutoFix(Value: TStrings);
??? procedure ImageListChange(Sender: TObject);
??? procedure SetImages(const Value: TCustomImageList);
??? function GetOnLeftButtonClick: TNotifyEvent;
??? function GetOnRightButtonRightClick: TNotifyEvent;
??? function GetOnRightButtonMiddleClick: TNotifyEvent;
??? function GetOnRightButtonLeftClick: TNotifyEvent;
??? procedure SetLeftButton(const Value: TEditButton);
??? procedure SetOnLeftButtonClick(const Value: TNotifyEvent);
??? procedure SetRightButtonRight(const Value: TEditButton);
??? procedure SetOnRightButtonRightClick(const Value: TNotifyEvent);
??? procedure SetRightButtonMiddle(const Value: TEditButton);
??? procedure SetOnRightButtonMiddleClick(const Value: TNotifyEvent);
??? procedure SetRightButtonLeft(const Value: TEditButton);
??? procedure SetOnRightButtonLeftClick(const Value: TNotifyEvent);
??? function GetOneKeyAddressUrl(Key:String):string;
??? function GetFixUrl(SrcKey,Key:String):string;
??? procedure GetTypedUrls;
? protected
??? { Protected declarations }
??? procedure DoSetTextHint(const Value: string); override;
??? function GetEditButtonClass: TEditButtonClass; dynamic;
??? procedure Notification(AComponent: TComponent; Operation: TOperation); override;
??? procedure UpdateEditMargins; dynamic;
??? procedure WndProc(var Message: TMessage); override;
??? procedure KeyDown(var Key: Word; Shift: TShiftState); override;
??? procedure KeyUp(var Key: Word; Shift: TShiftState); override;
? public
??? { Public declarations }
??? constructor Create(AOwner: TComponent); override;
??? destructor Destroy; override;
??? procedure LoadOneKeyAddressList;
??? procedure LoadAddressAutoFixList;
??? procedure SaveOneKeyAddressList;
??? procedure SaveAddressAutoFixList;
??? procedure DefaultHandler(var Message); override;
??? procedure UpdateTypedUrls;
??? function GetShellIcons:Cardinal;
??? property Images: TCustomImageList read FImages write SetImages;
??? property LeftButton: TEditButton read FLeftButton write SetLeftButton;
??? property RightButtonRight: TEditButton read FRightButtonRight write SetRightButtonRight;
??? property RightButtonMiddle: TEditButton read FRightButtonMiddle write SetRightButtonMiddle;
??? property RightButtonLeft: TEditButton read FRightButtonLeft write SetRightButtonLeft;
??? property OnLeftButtonClick: TNotifyEvent read GetOnLeftButtonClick write SetOnLeftButtonClick;
??? property OnRightButtonRightClick: TNotifyEvent read GetOnRightButtonRightClick write SetOnRightButtonRightClick;
??? property OnRightButtonMiddleClick: TNotifyEvent read GetOnRightButtonMiddleClick write SetOnRightButtonMiddleClick;
??? property OnRightButtonLeftClick: TNotifyEvent read GetOnRightButtonLeftClick write SetOnRightButtonLeftClick;
??? property FavIconsSavePath:String read FFavIconsSavePath write FFavIconsSavePath;
??? property OneKeyAddressFile:String read FOneKeyAddressFile write FOneKeyAddressFile;
??? property AddressAutoFixFile:String read FAddressAutoFixFile write FAddressAutoFixFile;
??? Property OneKeyAddress:TStrings read GetOneKeyAddress? write SetOneKeyAddress;
??? Property AddressAutoFix:TStrings read GetAddressAutoFix? write SetAddressAutoFix;
??? property OnUrlSelected: TOnUrlSelectedEvent read FOnUrlSelected write FOnUrlSelected;
??? property? TypedUrls:TStringList read FTypedUrls;
? published
??? { Published declarations }
? end;

?TUWSIEAddress=class(TCustomUWSIEAddress )
?private

?protected

?public


?published
??? property Align;
??? property Alignment;
??? property Anchors;
??? property AutoSelect;
??? property AutoSize;
??? property BevelEdges;
??? property BevelInner;
??? property BevelKind default bkNone;
??? property BevelOuter;
??? property BevelWidth;
??? property BiDiMode;
??? property BorderStyle;
??? property CharCase;
??? property Color;
??? property Constraints;
??? property Ctl3D;
??? property DoubleBuffered;
??? property DragCursor;
??? property DragKind;
??? property DragMode;
??? property Enabled;
??? property Font;
??? property HideSelection;
??? property Images;
??? property ImeMode;
??? property ImeName;
??? property LeftButton;
??? property MaxLength;
??? property OEMConvert;
??? property NumbersOnly;
??? property ParentBiDiMode;
??? property ParentColor;
??? property ParentCtl3D;
??? property ParentDoubleBuffered;
??? property ParentFont;
??? property ParentShowHint;
??? property PasswordChar;
??? property PopupMenu;
??? property ReadOnly;
??? property RightButtonRight;
??? property RightButtonMiddle;
??? property RightButtonLeft;
??? property ShowHint;
??? property TabOrder;
??? property TabStop;
??? property Text;
??? property TextHint;
??? property Touch;
??? property Visible;
??? property OnChange;
??? property OnClick;
??? property OnContextPopup;
??? property OnDblClick;
??? property OnDragDrop;
??? property OnDragOver;
??? property OnEndDock;
??? property OnEndDrag;
??? property OnEnter;
??? property OnExit;
??? property OnKeyDown;
??? property OnKeyPress;
??? property OnKeyUp;
??? property OnGesture;
??? property OnLeftButtonClick;
??? property OnMouseActivate;
??? property OnMouseDown;
??? property OnMouseEnter;
??? property OnMouseLeave;
??? property OnMouseMove;
??? property OnMouseUp;
??? property OnRightButtonRightClick;
??? property OnRightButtonMiddleClick;
??? property OnRightButtonLeftClick;
??? property OnStartDock;
??? property OnStartDrag;

??? property FavIconsSavePath;
??? property OneKeyAddressFile;
??? property AddressAutoFixFile;
??? Property OneKeyAddress;
??? Property AddressAutoFix;
??? property OnUrlSelected;
?end;


procedure Register;

implementation

procedure Register;
begin
? RegisterComponents('Unruly Wolf Soft', [TUWSIEAddress]);
end;

function CtrlDown : Boolean;
var
? State : TKeyboardState;
begin
? GetKeyboardState(State) ;
? Result := ((State[vk_Control] And 128) <> 0) ;
end;

function ShiftDown : Boolean;
var
? State : TKeyboardState;
begin
? GetKeyboardState(State) ;
? Result := ((State[vk_Shift] and 128) <> 0) ;
end;

function AltDown : Boolean;
var
? State : TKeyboardState;
begin
? GetKeyboardState(State) ;
? Result := ((State[vk_Menu] and 128) <> 0) ;
end;

{ TEditButton.TGlyph }

constructor TEditButton.TGlyph.Create(AButton: TEditButton);
begin
? inherited Create(AButton.FEditControl);
? FButton := AButton;
? FState := bsNormal;
? Parent := FButton.FEditControl;
? Visible := True;
? ShowHint:=True;
end;

procedure TEditButton.TGlyph.Click;
begin
? // Replicate from TControl to set Sender to owning TButtonedEdit control
? if Assigned(OnClick) and (Action <> nil) and not DelegatesEqual(@OnClick, @Action.OnExecute) then
??? OnClick(FButton.EditControl)
? else if not (csDesigning in ComponentState) and (ActionLink <> nil) then
??? ActionLink.Execute(FButton.EditControl)
? else if Assigned(OnClick) then
??? OnClick(FButton.EditControl);
? FState := bsNormal;
end;

procedure TEditButton.TGlyph.CreateWnd;
begin
? inherited;
? if Visible then
??? FButton.FEditControl.UpdateEditMargins;
end;

procedure TEditButton.TGlyph.Paint;
var
? LIndex: Integer;
begin
? inherited;
? if (FButton.Images <> nil) and Visible then
? begin
??? LIndex := FButton.ImageIndex;
??? if Enabled then
??? begin
????? case FState of
??????? bsHot:
????????? if FButton.HotImageIndex <> -1 then
??????????? LIndex := FButton.HotImageIndex;
??????? bsPushed:
????????? if FButton.PressedImageIndex <> -1 then
??????????? LIndex := FButton.PressedImageIndex;
????? end;
??? end
??? else
????? if FButton.DisabledImageIndex <> -1 then
??????? LIndex := FButton.DisabledImageIndex;
??? if LIndex <> -1 then
????? FButton.Images.Draw(Canvas, 0, 0, LIndex);
? end;
end;

procedure TEditButton.TGlyph.WndProc(var Message: TMessage);
var
? LPoint: TPoint;
begin
? if (Message.Msg = WM_CONTEXTMENU) and (FButton.EditControl.PopupMenu = nil) then
? begin
????? FState := bsNormal;
????? Exit;
? end;

? inherited;
? case Message.Msg of
??? CM_MOUSEENTER: FState := bsHot;
??? CM_MOUSELEAVE: FState := bsNormal;
??? WM_LBUTTONDOWN:
??? begin
??????? if FButton.FDropDownMenu <> nil then
??????? begin
????????? if not (csDesigning in Parent.ComponentState) then
????????? begin
??????????? LPoint := ClientToScreen(Point(0, FButton.EditControl.Height));
??????????? FButton.FDropDownMenu.Popup(LPoint.X, LPoint.Y);
??????????? if Assigned(OnClick) and (Action <> nil) and not DelegatesEqual(@OnClick, @Action.OnExecute) then
??????????? OnClick(FButton.EditControl)
??????????? else if not (csDesigning in ComponentState) and (ActionLink <> nil) then
??????????? ActionLink.Execute(FButton.EditControl)
??????????? else if Assigned(OnClick) then
??????????? OnClick(FButton.EditControl);
????????? end;
??????? end
??????? else
??????? FState := bsPushed;
??? end;
??? WM_LBUTTONUP: FState := bsNormal;
??? WM_RBUTTONUP:
??? begin
????? if FButton.FDropDownMenu <> nil then
??????? begin
????????? if not (csDesigning in Parent.ComponentState) then
????????? begin
??????????? LPoint := ClientToScreen(Point(0, FButton.EditControl.Height));
??????????? FButton.FDropDownMenu.Popup(LPoint.X, LPoint.Y);
??????????? FState := bsNormal;
????????? end;
??????? end;
??? end;
??? CM_VISIBLECHANGED: FButton.UpdateBounds;
? else
??? Exit;
? end;
? Invalidate;
end;

procedure TEditButton.TGlyph.CMHintShow(var Message: TCMHintShow);
begin
? if Hint<>''? then
? Message.HintInfo^.HintStr := Hint
end;

{ TEditButton }

constructor TEditButton.Create(EditControl: TCustomUWSIEAddress; APosition: TButtonPosition);
begin
? inherited Create;
? FEditControl := EditControl;
? FGlyph := TGlyph.Create(Self);
? FHotImageIndex := -1;
? FImageIndex := -1;
? FPosition := APosition;
? FPressedImageIndex := -1;
? FDisabledImageIndex := -1;
end;

destructor TEditButton.Destroy;
begin
? FGlyph.Parent.RemoveControl(FGlyph);
? FGlyph.Free;
? inherited;
end;

function TEditButton.GetEnabled: Boolean;
begin
? Result := FGlyph.Enabled;
end;

function TEditButton.GetCustomHint: TCustomHint;
begin
? Result := FGlyph.CustomHint;
end;

function TEditButton.GetHint: string;
begin
? Result := FGlyph.Hint;
end;

function TEditButton.GetImages: TCustomImageList;
begin
? Result := FEditControl.Images;
end;

function TEditButton.GetOwner: TPersistent;
begin
? Result := FEditControl;
end;

function TEditButton.GetVisible: Boolean;
begin
? Result := FGlyph.Visible;
end;

procedure TEditButton.SetDisabledImageIndex(const Value: TImageIndex);
begin
? if Value <> FDisabledImageIndex then
? begin
??? FDisabledImageIndex := Value;
??? if not Enabled then
????? FGlyph.Invalidate;
? end;
end;

procedure TEditButton.SetEnabled(const Value: Boolean);
begin
? if Value <> FGlyph.Enabled then
? begin
??? FGlyph.Enabled := Value;
??? FGlyph.Invalidate;
? end;
end;

procedure TEditButton.SetCustomHint(const Value: TCustomHint);
begin
? if Value <> FGlyph.CustomHint then
??? FGlyph.CustomHint := Value;
end;

procedure TEditButton.SetHint(const Value: string);
begin
? if Value <> FGlyph.Hint then
??? FGlyph.Hint := Value;
end;

procedure TEditButton.SetHotImageIndex(const Value: TImageIndex);
begin
? if Value <> FHotImageIndex then
? begin
??? FHotImageIndex := Value;
??? if FGlyph.FState = bsHot then
????? FGlyph.Invalidate;
? end;
end;

procedure TEditButton.SetImageIndex(const Value: TImageIndex);
begin
? if Value <> FImageIndex then
? begin
??? FImageIndex := Value;
??? if FGlyph.FState = bsNormal then
????? FGlyph.Invalidate;
? end;
end;

procedure TEditButton.SetPressedImageIndex(const Value: TImageIndex);
begin
? if Value <> FPressedImageIndex then
? begin
??? FPressedImageIndex := Value;
??? if FGlyph.FState = bsPushed then
????? FGlyph.Invalidate;
? end;
end;

procedure TEditButton.SetVisible(const Value: Boolean);
begin
? if Value <> FGlyph.Visible then
? begin
??? FGlyph.Visible := Value;
??? FEditControl.UpdateEditMargins;
? end;
end;

procedure TEditButton.UpdateBounds;
var
? EdgeSize, NewLeft: Integer;
begin
? if FGlyph <> nil then
? begin
??? if Images <> nil then
??? begin
????? FGlyph.Width := Images.Width;
????? FGlyph.Height := Images.Height;
??? end
??? else
??? begin
????? FGlyph.Width := 0;
????? FGlyph.Height := 0;
??? end;
??? FGlyph.Top := (FEditControl.Height-FGlyph.Height) div 2-1;
??? NewLeft := FGlyph.Left;

??? if not ThemeServices.ThemesEnabled then
????? FGlyph.Top :=(FEditControl.Height-FGlyph.Height) div 2;

??? case FPosition of
????? bpLeft:
??????? begin
????????? if ThemeServices.ThemesEnabled then
??????????? NewLeft := 0
????????? else
??????????? NewLeft := 1;
??????? end;
????? bpRightRight:
??????? begin
????????? NewLeft := FEditControl.Width - FGlyph.Width-2;
????????? if FEditControl.BorderStyle <> bsNone then
??????????? Dec(NewLeft, 4);
????????? if FEditControl.BevelKind <> bkNone then
????????? begin
??????????? EdgeSize := 0;
??????????? if FEditControl.BevelInner <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
??????????? if FEditControl.BevelOuter <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
??????????? if beRight in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
??????????? if beLeft in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
????????? end;
????????? if not ThemeServices.ThemesEnabled then
??????????? Dec(NewLeft);
??????? end;
????? bpRightMiddle:
??????? begin
????????? NewLeft := FEditControl.Width - FGlyph.Width*2-4;
????????? if FEditControl.BorderStyle <> bsNone then
??????????? Dec(NewLeft, 4);
????????? if FEditControl.BevelKind <> bkNone then
????????? begin
??????????? EdgeSize := 0;
??????????? if FEditControl.BevelInner <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
??????????? if FEditControl.BevelOuter <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
??????????? if beRight in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
??????????? if beLeft in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
????????? end;
????????? if not ThemeServices.ThemesEnabled then
??????????? Dec(NewLeft);
??????? end;

??????? bpRightLeft:
????????? begin
??????????? NewLeft := FEditControl.Width - FGlyph.Width*3-8;
??????????? if FEditControl.BorderStyle <> bsNone then
??????????? Dec(NewLeft, 4);
??????????? if FEditControl.BevelKind <> bkNone then
??????????? begin
????????????? EdgeSize := 0;
????????????? if FEditControl.BevelInner <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
????????????? if FEditControl.BevelOuter <> bvNone then
????????????? Inc(EdgeSize, FEditControl.BevelWidth);
????????????? if beRight in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
????????????? if beLeft in FEditControl.BevelEdges then
????????????? Dec(NewLeft, EdgeSize);
??????????? end;
??????????? if not ThemeServices.ThemesEnabled then
??????????? Dec(NewLeft);
??????? end;
??? end;

??? if (not FEditControl.Ctl3D) and (FEditControl.BorderStyle <> bsNone) then
??? begin
????? FGlyph.Top := (FEditControl.Height-FGlyph.Height) div 2;
????? Inc(NewLeft, 2);
??? end;

??? FGlyph.Left := NewLeft;

??? if (csDesigning in FEditControl.ComponentState) and not Visible then
????? FGlyph.Width := 0;
? end;
end;


constructor TCustomUWSIEAddress.Create(AOwner: TComponent);
begin
? inherited;
? FCanvas := TControlCanvas.Create;
? FCanvas.Control := Self;
? FImageChangeLink := TChangeLink.Create;
? FImageChangeLink.OnChange := ImageListChange;
? FLeftButton := GetEditButtonClass.Create(Self, bpLeft);
? FRightButtonRight := GetEditButtonClass.Create(Self, bpRightRight);
? FRightButtonMiddle := GetEditButtonClass.Create(Self, bpRightMiddle);
? FRightButtonLeft := GetEditButtonClass.Create(Self, bpRightLeft);
? font.Size:=12;
? FShiftKeyID:=0;
? FFavIconsSavePath:='';
? FOneKeyAddressFile:='';
? FAddressAutoFixFile:='';

? FOneKeyAddress:=TStringlist.Create ;
? FAddressAutoFix:=TStringlist.Create ;
? FTypedUrls:=TStringlist.Create ;

? LoadOneKeyAddressList;
? LoadAddressAutoFixList;
? GetTypedUrls;
end;

destructor TCustomUWSIEAddress.Destroy;
begin
? FreeAndNil(FCanvas);
? FreeAndNil(FImageChangeLink);
? FreeAndNil(FLeftButton);
? FreeAndNil(FRightButtonRight);
? FreeAndNil(FRightButtonMiddle);
? FreeAndNil(FRightButtonLeft);

? SaveOneKeyAddressList;
? SaveAddressAutoFixList;
? FOneKeyAddress.Free ;
? FAddressAutoFix.Free;
? FTypedUrls.Free ;
? inherited;
end;

function TCustomUWSIEAddress.AdjustTextHint(Margin: Integer; const Value: string): string;
var
? LWidth, Count: Integer;
begin
? if (Margin = 0) or (Win32MajorVersion >= 6) then
??? inherited DoSetTextHint(Value)
? else
? begin
??? // This is a hack!! Due to a presumed bug in Windows XP any text hint
??? // set with EM_SETCUEBANNER does not respect left margins set with
??? // EM_SETMARGINS. The following works around the issue.
??? FCanvas.Font := Font;
??? LWidth := FCanvas.TextWidth(' '); // do not localize
??? Count := Margin div LWidth;
??? if (Margin mod LWidth) > 0 then
????? Inc(Count);
??? inherited DoSetTextHint(StringOfChar(' ', Count) + Value);
? end;
end;

procedure TCustomUWSIEAddress.DoSetTextHint(const Value: string);
begin
? AdjustTextHint(0, Value);
end;

function TCustomUWSIEAddress.GetEditButtonClass: TEditButtonClass;
begin
? Result := TEditButton;
end;

function TCustomUWSIEAddress.GetOnLeftButtonClick: TNotifyEvent;
begin
? Result := LeftButton.Glyph.OnClick;
end;

function TCustomUWSIEAddress.GetOnRightButtonRightClick: TNotifyEvent;
begin
? Result := RightButtonRight.Glyph.OnClick;
end;

function TCustomUWSIEAddress.GetOnRightButtonMiddleClick: TNotifyEvent;
begin
? Result := RightButtonMiddle.Glyph.OnClick;
end;

function TCustomUWSIEAddress.GetOnRightButtonLeftClick: TNotifyEvent;
begin
? Result := RightButtonLeft.Glyph.OnClick;
end;

procedure TCustomUWSIEAddress.ImageListChange(Sender: TObject);
begin
? if HandleAllocated then
? begin
??? FLeftButton.UpdateBounds;
??? FRightButtonRight.UpdateBounds;
??? FRightButtonMiddle.UpdateBounds;
??? FRightButtonLeft.UpdateBounds;
??? UpdateEditMargins;
? end;
end;

procedure TCustomUWSIEAddress.DefaultHandler(var Message);
{$IF DEFINED(CLR)}
var
? LMessage: TMessage;
{$IFEND}
begin
? inherited;
{$IF DEFINED(CLR)}
? LMessage := UnwrapMessage(TObject(Message));
? case LMessage.Msg of
{$ELSE}
? case TMessage(Message).Msg of
{$IFEND}
??? CN_CTLCOLOREDIT:
????? begin
??????? FLeftButton.Glyph.Invalidate;
??????? FRightButtonRight.Glyph.Invalidate;
??????? FRightButtonMiddle.Glyph.Invalidate;
??????? FRightButtonLeft.Glyph.Invalidate;
????? end;
??? WM_SIZE:
????? begin
??????? FRightButtonRight.UpdateBounds;
??????? FRightButtonMiddle.UpdateBounds;
??????? FRightButtonLeft.UpdateBounds;
????? end;
? end;
end;

procedure TCustomUWSIEAddress.Notification(AComponent: TComponent; Operation: TOperation);
begin
? inherited Notification(AComponent, Operation);
? if Operation = opRemove then
? begin
??? if AComponent = FImages then
??? begin
????? FImages := nil;
????? FLeftButton.UpdateBounds;
????? FRightButtonRight.UpdateBounds;
????? FRightButtonMiddle.UpdateBounds;
????? FRightButtonLeft.UpdateBounds;
????? UpdateEditMargins;
??? end
??? else if (LeftButton <> nil) and (AComponent = LeftButton.DropDownMenu) then
????? LeftButton.DropDownMenu := nil
??? else if (RightButtonRight <> nil) and (AComponent = RightButtonRight.DropDownMenu) then
????? RightButtonRight.DropDownMenu := nil
??? else if (RightButtonMiddle <> nil) and (AComponent = RightButtonMiddle.DropDownMenu) then
????? RightButtonMiddle.DropDownMenu := nil
??? else if (RightButtonLeft <> nil) and (AComponent = RightButtonLeft.DropDownMenu) then
????? RightButtonLeft.DropDownMenu := nil;
? end;
end;

procedure TCustomUWSIEAddress.SetImages(const Value: TCustomImageList);
begin
? if Value <> FImages then
? begin
??? if FImages <> nil then
????? FImages.UnRegisterChanges(FImageChangeLink);
??? FImages := Value;
??? if FImages <> nil then
??? begin
????? FImages.RegisterChanges(FImageChangeLink);
????? FImages.FreeNotification(Self);
??? end;
??? FLeftButton.UpdateBounds;
??? FRightButtonRight.UpdateBounds;
??? FRightButtonMiddle.UpdateBounds;
??? FRightButtonLeft.UpdateBounds;
??? UpdateEditMargins;
? end;
end;

procedure TCustomUWSIEAddress.SetLeftButton(const Value: TEditButton);
begin
? FLeftButton.Assign(Value);
end;

procedure TCustomUWSIEAddress.SetOnLeftButtonClick(const Value: TNotifyEvent);
begin
? LeftButton.Glyph.OnClick := Value;
end;

procedure TCustomUWSIEAddress.SetOnRightButtonRightClick(const Value: TNotifyEvent);
begin
? RightButtonRight.Glyph.OnClick := Value;
end;

procedure TCustomUWSIEAddress.SetOnRightButtonMiddleClick(const Value: TNotifyEvent);
begin
? RightButtonMiddle.Glyph.OnClick := Value;
end;

procedure TCustomUWSIEAddress.SetOnRightButtonLeftClick(const Value: TNotifyEvent);
begin
? RightButtonLeft.Glyph.OnClick := Value;
end;

procedure TCustomUWSIEAddress.SetRightButtonRight(const Value: TEditButton);
begin
? FRightButtonRight.Assign(Value);
end;

procedure TCustomUWSIEAddress.SetRightButtonMiddle(const Value: TEditButton);
begin
? FRightButtonMiddle.Assign(Value);
end;

procedure TCustomUWSIEAddress.SetRightButtonLeft(const Value: TEditButton);
begin
? FRightButtonLeft.Assign(Value);
end;

procedure TCustomUWSIEAddress.UpdateEditMargins;
var
? LMargin, RMargin: Integer;
begin
? if HandleAllocated then
? begin
??? LMargin := 0;
??? RMargin := 0;
??? if (Images <> nil) then
??? begin
????? if LeftButton.Visible then
??????? LMargin := Images.Width + 2;
????? if RightButtonLeft.Visible then
??????? RMargin := 3*Images.Width+16;
??? end;
??? SendMessage(Handle, EM_SETMARGINS, EC_LEFTMARGIN or EC_RIGHTMARGIN, MakeLong(LMargin, RMargin));
??? AdjustTextHint(LMargin, TextHint);
??? Invalidate;
? end;
end;

procedure TCustomUWSIEAddress.WndProc(var Message: TMessage);
var
? LLeft, LTop: Integer;
begin
? case Message.Msg of
??? CN_CTLCOLORSTATIC,
??? CN_CTLCOLOREDIT:
????? if FImages <> nil then
????? begin
??????? if LeftButton.Visible then
??????? begin
????????? LLeft := LeftButton.Glyph.Left;
????????? LTop := (Height-LeftButton.Glyph.Height) div 2-1;
????????? if ThemeServices.ThemesEnabled and Ctl3D then
????????? begin
??????????? Inc(LLeft);
??????????? Inc(LTop);
????????? end;
????????? ExcludeClipRect(Message.WParam, LLeft + 1, LTop + 1,
??????????? LeftButton.Glyph.Width + LeftButton.Glyph.Left, LeftButton.Glyph.Height);
??????? end;

??????? if RightButtonRight.Visible then
??????? begin
????????? LTop := (Height-RightButtonRight.Glyph.Height) div 2-1;
????????? if ThemeServices.ThemesEnabled and Ctl3D then
??????????? Inc(LTop);
????????? ExcludeClipRect(Message.WParam, RightButtonRight.Glyph.Left, LTop + 1,
??????????? RightButtonRight.Glyph.Width + RightButtonRight.Glyph.Left, RightButtonRight.Glyph.Height);
??????? end;

??????? if RightButtonMiddle.Visible then
??????? begin
????????? LTop := (Height-RightButtonMiddle.Glyph.Height) div 2-1;
????????? if ThemeServices.ThemesEnabled and Ctl3D then
??????????? Inc(LTop);
????????? ExcludeClipRect(Message.WParam, RightButtonMiddle.Glyph.Left, LTop + 1,
??????????? RightButtonMiddle.Glyph.Width + RightButtonMiddle.Glyph.Left, RightButtonMiddle.Glyph.Height);
??????? end;

??????? if RightButtonLeft.Visible then
??????? begin
????????? LTop :=(Height-RightButtonLeft.Glyph.Height) div 2-1;
????????? if ThemeServices.ThemesEnabled and Ctl3D then
??????????? Inc(LTop);
????????? ExcludeClipRect(Message.WParam, RightButtonLeft.Glyph.Left, LTop + 1,
??????????? RightButtonLeft.Glyph.Width + RightButtonLeft.Glyph.Left, RightButtonLeft.Glyph.Height);
??????? end;
????? end;
? end;

? inherited;

? case Message.Msg of
??? CM_BORDERCHANGED,
??? CM_CTL3DCHANGED:
????? begin
??????? if not (csLoading in ComponentState) then
??????? begin
????????? LeftButton.UpdateBounds;
????????? RightButtonRight.UpdateBounds;
????????? RightButtonMiddle.UpdateBounds;
????????? RightButtonLeft.UpdateBounds;
??????? end;
????? end;
??? CM_FONTCHANGED:
????? if not (csLoading in ComponentState) then
??????? UpdateEditMargins;
? end;
end;

function TCustomUWSIEAddress.GetOneKeyAddress: TStrings;
begin
? Result:=FOneKeyAddress;
end;

function TCustomUWSIEAddress.GetAddressAutoFix: TStrings;
begin
??? Result:=FAddressAutoFix;
end;

procedure TCustomUWSIEAddress.SetOneKeyAddress(Value: TStrings);
begin
? FOneKeyAddress.Assign(Value);
end;

procedure TCustomUWSIEAddress.SetAddressAutoFix(Value: TStrings);
begin
? FAddressAutoFix.Assign(Value);
end;

procedure TCustomUWSIEAddress.LoadOneKeyAddressList;
begin
??? if (csDesigning in ComponentState) then Exit;
??? if FOneKeyAddressFile='' then
??? FOneKeyAddressFile:=Format('%s\OneKeyAddress.dat',[ExtractFileDir(Application.ExeName)]);
??? if fileExists(FOneKeyAddressFile) then
??? FOneKeyAddress.LoadFromFile(FOneKeyAddressFile);
??? if FOneKeyAddress.Count=0 then
??? begin
?????? FOneKeyAddress.Add('123=www.hao123.com');
?????? FOneKeyAddress.Add('d123=123.duba.net');
?????? FOneKeyAddress.Add('baidu=www.baidu.com');
?????? FOneKeyAddress.Add('b=www.baidu.com');
?????? FOneKeyAddress.Add('百度=www.baidu.com');
?????? FOneKeyAddress.Add('g=www.google.com');
?????? FOneKeyAddress.Add('google=www.google.com');
?????? FOneKeyAddress.Add('谷歌=www.google.com');
?????? FOneKeyAddress.Add('k=www.kingsoft.com');
?????? FOneKeyAddress.Add('kingsoft=www.kingsoft.com');
?????? FOneKeyAddress.Add('金山=www.kingsoft.com');
?????? FOneKeyAddress.Add('i=www.ijinshan.com');
?????? FOneKeyAddress.Add('duba=www.ijinshan.com');
?????? FOneKeyAddress.Add('毒霸=www.ijinshan.com');
?????? FOneKeyAddress.Add('金山毒霸=www.ijinshan.com');
?????? FOneKeyAddress.Add('金山衛士=www.ijinshan.com');
?????? FOneKeyAddress.Add('衛士=www.ijinshan.com');
?????? FOneKeyAddress.Add('wps=www.wps.cn');
?????? FOneKeyAddress.Add('q=www.qq.com');
?????? FOneKeyAddress.Add('sina=www.sina.com');
?????? FOneKeyAddress.Add('新浪=www.sina.com');
??? end;
end;

procedure TCustomUWSIEAddress.LoadAddressAutoFixList;
begin
??? if (csDesigning in ComponentState) then Exit;
??? if FAddressAutoFixFile='' then
??? FAddressAutoFixFile:=Format('%s\AddressAutoFix.dat',[ExtractFileDir(Application.ExeName)]);
??? if FileExists(FAddressAutoFixFile) then
??? FAddressAutoFix.LoadFromFile(FAddressAutoFixFile);
??? if FAddressAutoFix.Count=0 then
??? begin
????? FAddressAutoFix.Add('Ctrl+Enter=www. .com');
????? FAddressAutoFix.Add('Alt+Enter=www. .cn');
????? FAddressAutoFix.Add('Shift+Enter=www. .com.cn');
????? FAddressAutoFix.Add('Ctrl+Alt+Enter=www. .net');
????? FAddressAutoFix.Add('Ctrl+Shift+Enter=www. .org');
????? FAddressAutoFix.Add('Alt+Shift+Enter=www. .cc');
????? FAddressAutoFix.Add('Ctrl+Shift+Alt+Enter=http://www.baidu.com/s?wd=');
??? end;
end;

procedure TCustomUWSIEAddress.SaveOneKeyAddressList;
begin
??? if FOneKeyAddressFile='' then
??? FOneKeyAddressFile:=Format('%s\OneKeyAddress.dat',[ExtractFileDir(Application.ExeName)]);
??? FOneKeyAddress.SavetoFile(FOneKeyAddressFile);
end;

procedure TCustomUWSIEAddress.SaveAddressAutoFixList;
begin
??? if FAddressAutoFixFile='' then
??? FAddressAutoFixFile:=Format('%s\AddressAutoFix.dat',[ExtractFileDir(Application.ExeName)]);
??? FAddressAutoFix.SavetoFile(FAddressAutoFixFile);
end;

function TCustomUWSIEAddress.GetOneKeyAddressUrl(Key:String):string;
begin
?? Result:=Key;
?? if (FOneKeyAddress.Count>0) and (Key<>'') then
?? begin
????? Result:=FOneKeyAddress.Values[Key];
????? if Result='' then
????? Result:=Key ;
?? end;
end;

function TCustomUWSIEAddress.GetFixUrl(SrcKey,Key:String):string;
var
? SubUrlList:TStringList;
? I,K:Integer;
? SubUrls:TArray<string>;
? SubUrl,TempResult:string;
begin
?? Result:=key;
?? if (SrcKey<>'') and (Key<>'') then
?? begin
???? SubUrlList:=TStringList.Create ;
???? try
?????? SubUrls:=TRegEx.Split(SrcKey,'[ ?]');
?????? for SubUrl in SubUrls do
?????? SubUrlList.Add(SubUrl);
?????? K:=SubUrlList.Count;
?????? if k>0 then
?????? begin
????????? TempResult:=SubUrlList[0]+Key;
????????? if K>1 then
????????? TempResult:=TempResult+SubUrlList[1];
?????? end
?????? else
?????? TempResult:=Key ;
???? finally
?????? SubUrlList.Free ;
???? end;
???? Result:=TempResult ;
?? end;
end;

procedure TCustomUWSIEAddress.GetTypedUrls;
var
? Reg:TRegistry;
? Urls:TStringList;
? I:Integer ;
? TmpUrl:string;
begin
?? Reg:=TRegistry.Create;
?? Urls:=TStringList.Create;
?? try
???? Reg.RootKey:=HKEY_CURRENT_USER;
???? if Reg.OpenKey('Software\Microsoft\Internet Explorer\TypedURLs', False) then
???? begin
??????? Reg.GetValueNames(Urls);
??????? if Urls.Count>0 then
??????? for I:=0 to Urls.Count-1 do
??????? begin
????????? TmpUrl:=Reg.ReadString(Urls[I]);
????????? TmpUrl:=Trim(TmpUrl);
????????? if (TmpUrl<>'') and (FTypedUrls.IndexOf(TmpUrl)=-1) then
????????? FTypedUrls.Add(TmpUrl);
??????? end;
??????? Reg.CloseKey ;
???? end;
???? if Reg.OpenKey('Software\Microsoft\Internet Explorer\TypedAddress', false) then
???? begin
??????? Reg.GetValueNames(Urls);
??????? if Urls.Count>0 then
??????? for I:=0 to Urls.Count-1 do
??????? begin
????????? TmpUrl:=Reg.ReadString(Urls[I]);
????????? TmpUrl:=Trim(TmpUrl);
????????? if (TmpUrl<>'') and (FTypedUrls.IndexOf(TmpUrl)=-1) then
????????? FTypedUrls.Add(TmpUrl);
??????? end;
??????? Reg.CloseKey ;
???? end;
?? finally
???? Reg.Free;
???? Urls.Free;
?? end;
end;

procedure TCustomUWSIEAddress.UpdateTypedUrls;
var
? reg:TRegistry ;
begin
?? GetTypedUrls ;
?? if Text='' then Exit;
?? if FTypedUrls.IndexOf(Text)=-1 then
?? begin
???? reg:=TRegistry.Create ;
???? try
?????? if Reg.OpenKey('Software\Microsoft\Internet Explorer\TypedURLs', False) then
?????? begin
????????? reg.WriteString(Format('url%d',[FTypedUrls.Count+1]),Text);
?????? end;
?????? reg.CloseKey ;
???? finally
?????? reg.Free;
???? end;
?? end;
end;

function TCustomUWSIEAddress.GetShellIcons:Cardinal;
var
?sfi: TShFileInfo;
?aHandle: Cardinal;
begin
? Result:=0;
? aHandle := ShGetFileInfo('', 0, sfi, sizeOf(sfi), SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
? if (aHandle <> 0) then
? Result:= aHandle;
end;

procedure TCustomUWSIEAddress.KeyDown(var Key: Word; Shift: TShiftState);
begin
? FShiftKeyID:=0;
? if CtrlDown then
? FShiftKeyID:=FShiftKeyID+ctrlID;
? if ShiftDown then
? FShiftKeyID:=FShiftKeyID+ShiftID;
? if AltDown then
? FShiftKeyID:=FShiftKeyID+AltID;

? inherited;
end;

procedure TCustomUWSIEAddress.KeyUp(var Key: Word; Shift: TShiftState);
var
? SrcKey:string;
? bCancel:Boolean ;
begin
? bCancel:=False ;
? if Key=13 then
? begin
??? case FShiftKeyID of
????? 0:begin
????????? Text:=GetOneKeyAddressUrl(Text);
??????? end;
????? CtrlID:begin
?????????????? SrcKey:=FAddressAutoFix.Values['Ctrl+Enter'];
?????????????? Text:=GetFixUrl(SrcKey,Text);
???????????? end;
????? AltID:begin
????????????? SrcKey:=FAddressAutoFix.Values['Alt+Enter'];
????????????? Text:=GetFixUrl(SrcKey,Text);
??????????? end;
????? ShiftID:begin
??????????????? SrcKey:=FAddressAutoFix.Values['Shift+Enter'];
??????????????? Text:=GetFixUrl(SrcKey,Text);
????????????? end;
????? ACID:begin
???????????? SrcKey:=FAddressAutoFix.Values['Ctrl+Alt+Enter'];
???????????? Text:=GetFixUrl(SrcKey,Text);
?????????? end;
????? SCID:begin
???????????? SrcKey:=FAddressAutoFix.Values['Ctrl+Shift+Enter'];
???????????? Text:=GetFixUrl(SrcKey,Text);
?????????? end;
????? ASID:begin
???????????? SrcKey:=FAddressAutoFix.Values['Alt+Shift+Enter'];
???????????? Text:=GetFixUrl(SrcKey,Text);
?????????? end;
????? ASCID:begin
????????????? SrcKey:=FAddressAutoFix.Values['Ctrl+Shift+Alt+Enter'];
????????????? Text:=GetFixUrl(SrcKey,Text);
??????????? end;
??? end;
??? if Text='' then
??? Text:='about:blank'
??? {else if (Pos('.',Text)=0) and (not FileExists(Text)) and
?????? (not DirectoryExists(Text)) then
??? Text:='http://www.baidu.com/s?wd='+Text};
??? UpdateTypedUrls;
??? if Assigned(FOnUrlSelected) then
??? FOnUrlSelected(Self, Text, bCancel);
? end;
? FShiftKeyID:=0;

? inherited;
end;

end.

代碼沒有整理,習慣沒養好

完整組件這里下載

http://files.cnblogs.com/uws2056/UWSIEAddress.rar

轉載于:https://www.cnblogs.com/uws2056/archive/2012/01/08/2316437.html

總結

以上是生活随笔為你收集整理的TEdit扩展:做成多按钮的Edit,可用作浏览器地址栏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲天堂首页 | 黄色一级免费网站 | 国产99久久九九精品 | 五月开心六月伊人色婷婷 | 91在线观看高清 | 国产无遮挡猛进猛出免费软件 | 天天做天天爱夜夜爽 | 国产精品午夜免费福利视频 | av网站在线观看免费 | 日本在线观看一区二区三区 | www.在线看片.com | 国产视频在线观看一区二区 | 欧美色图30p | 亚洲人在线7777777精品 | 一二区精品 | 一区二区三区电影大全 | 在线观看中文字幕第一页 | 精品亚洲二区 | 日韩在线观看 | 9ⅰ精品久久久久久久久中文字幕 | 福利一区在线视频 | 国产成人免费av电影 | 久久尤物电影视频在线观看 | 国产99re | 日韩欧美第二页 | 久久三级毛片 | 91手机视频 | 日韩精品在线免费观看 | 国产精品毛片一区二区在线 | 黄色美女免费网站 | 男女激情片在线观看 | 在线观看爱爱视频 | 国产二级视频 | 久久精品日产第一区二区三区乱码 | 精品国产1区2区3区 国产欧美精品在线观看 | 91精选在线观看 | 97超碰超碰 | 免费日韩一区二区三区 | a级片韩国 | 久久成人午夜 | 久久99久久精品国产 | 亚洲免费视频在线观看 | 伊人永久在线 | 1000部18岁以下禁看视频 | 日韩久久精品一区二区三区 | 91久久一区二区 | 99精品国产高清在线观看 | 91激情 | 日韩最新理论电影 | 91九色在线视频 | 五月天婷婷丁香花 | 麻豆视频免费播放 | 一区二区三区免费在线播放 | 日韩视频在线观看视频 | 久热av | 日韩精品久久久 | 成人试看120秒 | 日韩欧美视频一区二区 | 国产一区二区精品 | 五月婷婷六月综合 | 成年人在线视频观看 | 一区二区三区精品在线视频 | 亚洲国产剧情 | 九九在线视频免费观看 | 久久性生活片 | 婷婷六月天天 | 日韩午夜小视频 | 992tv在线成人免费观看 | 天天爱天天操天天爽 | 久久免费视频99 | www.啪啪.com | 精品在线观看免费 | 亚洲精色 | 亚洲一区天堂 | av福利网址导航大全 | 久草视频免费播放 | 女人高潮一级片 | 成人在线免费观看网站 | 天天色官网 | 麻豆一区在线观看 | 欧美韩日精品 | 九草视频在线观看 | 亚洲精品在线观看不卡 | 精品久久久久久综合日本 | 国产黄色精品 | 中文永久免费观看 | 91在线免费视频 | 免费看毛片网站 | 中文字幕制服丝袜av久久 | 91黄色影视 | 久久精品视频国产 | 国产精品中文久久久久久久 | 在线观看视频一区二区三区 | 激情久久久久久久久久久久久久久久 | 国产精品久久久久永久免费观看 | 国产中文字幕免费 | 在线高清一区 | 欧美aa级| 久久成人精品电影 | 美女在线免费观看视频 | 国产裸体无遮挡 | 99r精品视频在线观看 | 四虎免费在线观看 | 午夜精品久久久久久久99热影院 | 99一区二区三区 | 麻豆视频在线免费观看 | 国产精品久久久久免费a∨ 欧美一级性生活片 | av专区在线 | 人人干网站 | av专区在线| 亚洲精品视频在线免费 | 99综合电影在线视频 | 综合五月婷婷 | 久久久午夜精品理论片中文字幕 | 国产精品国产三级国产aⅴ入口 | 成人一区二区在线观看 | 色婷婷综合久久久中文字幕 | 黄色一级大片在线免费看国产一 | 91成年人网站 | 国产精品毛片一区视频播 | 伊人日日干 | 欧美另类视频 | 久久久999精品视频 国产美女免费观看 | 日韩xxxx视频 | 免费视频网 | 最新日韩在线观看视频 | 亚洲精品久久激情国产片 | 黄色成人av网址 | 国模视频一区二区三区 | 香蕉视频在线观看免费 | 日日爱视频 | 免费黄色在线播放 | 国产精品久久99综合免费观看尤物 | 一区二区三区 中文字幕 | 亚洲精品视频www | 久久狠狠一本精品综合网 | 国产精品一区二区三区99 | 国产欧美精品一区二区三区 | 久久这里只有精品1 | 国产香蕉视频在线观看 | 香蕉视频在线视频 | 亚洲最大色| 久久久久观看 | 日韩高清av在线 | 免费在线a | 日韩中文字幕在线看 | 四虎影视成人精品国库在线观看 | 欧美日韩高清一区二区 | 欧美日韩国产精品一区二区三区 | 黄色一级在线视频 | 六月色丁 | 91.精品高清在线观看 | 久久午夜精品影院一区 | 激情五月在线观看 | 免费黄色小网站 | 人人射网站| 国产精品一区二区久久精品爱微奶 | 四虎免费在线观看视频 | 在线观看理论 | 国产精品九九视频 | 99久久精品网 | 国产一区二区三区在线免费观看 | 国产中文在线播放 | 亚洲视频在线视频 | 1区2区视频 | 久久婷婷色 | 人人玩人人添人人 | 2018好看的中文在线观看 | 亚洲国产精品免费 | 偷拍区另类综合在线 | 亚洲精品乱码久久久久久写真 | 91精品电影 | 久久久久久久久久久网 | 日韩av电影国产 | 成人av资源 | 久人人| 深夜国产福利 | 久久综合导航 | 久久精品99久久久久久 | 激情欧美日韩一区二区 | 亚洲午夜大片 | 久久久久成人免费 | 99精品在线看 | 亚洲精品一区二区三区新线路 | 在线日本看片免费人成视久网 | 手机版av在线| 日韩和的一区二在线 | 97av在线 | 精品国产网址 | 九九九九精品 | 久久伊人国产精品 | 狠狠操夜夜操 | 成人黄色av网站 | 国产高清在线精品 | 国产精品18久久久久久久 | 亚洲国产免费 | 中文字幕资源站 | 91精彩视频 | 成人免费亚洲 | 99久热在线精品 | 337p西西人体大胆瓣开下部 | 黄色在线免费观看网站 | 美女网站色免费 | av线上免费观看 | 91久久国产综合精品女同国语 | 久久久影视 | 国产精品一区二区三区四区在线观看 | 国产精品免费久久久久 | 天天摸日日摸人人看 | 国产美女视频免费观看的网站 | 亚洲精品一区二区三区高潮 | 亚洲成年人免费网站 | 69视频网站| 国产精品日韩在线播放 | 亚洲国产三级在线 | 久久精品日产第一区二区三区乱码 | 欧美一二三在线 | 久久久久久久久久久成人 | 久草干| 国产很黄很色的视频 | 521色香蕉网站在线观看 | 久久综合网色—综合色88 | 精品久久一二三区 | 日韩高清免费观看 | 黄色软件在线观看视频 | www天天干com| 日韩免费视频观看 | 久久久免费观看完整版 | 欧美日韩在线观看视频 | 超碰人人在| 久草免费在线视频观看 | 成人丝袜| 久久超| 中文字幕国产一区二区 | 久久视频精品在线观看 | 91精品国产自产在线观看 | 天天综合网在线观看 | 五月婷网站 | 国产精品一区二区av影院萌芽 | 日本资源中文字幕在线 | 中文字幕一区二区三区视频 | 国产热re99久久6国产精品 | 99热最新| 色在线视频| 中文字幕在线播放日韩 | 国产在线久久久 | 亚洲视频免费视频 | 亚洲天天综合 | 在线视频手机国产 | 久久久av电影 | 国产黄色片一级三级 | 国产精品毛片一区视频播 | 国产午夜在线 | 久久久久99999| 日韩系列 | 黄色福利网站 | 久久久69 | 成人久久免费 | 又爽又黄又刺激的视频 | 日日夜夜狠狠 | 国产高清视频在线免费观看 | 九九免费精品 | 丰满少妇在线观看网站 | 草久草久 | 精品国产123| 午夜精品区 | 97看片网 | 国产欧美在线一区 | 精品国产一区二区三区久久久 | 黄色大片国产 | 中文字幕在线观看完整 | 99久久精品国产一区 | 午夜精品久久久久久久99 | 日韩电影一区二区三区在线观看 | 久久综合久久八八 | 国内成人精品2018免费看 | 久久综合影视 | 激情在线免费视频 | 国产v在线 | 精品国产激情 | 日韩精品视频在线观看免费 | 亚洲视频第一页 | 91亚洲精品在线观看 | 亚洲专区欧美专区 | 日韩高清免费在线 | 一级欧美一级日韩 | 国产在线观看99 | 欧美一级欧美一级 | 97碰在线| 日韩在线视 | 911国产| 色网免费观看 | 久久视频在线看 | 久久97精品 | 亚洲成色777777在线观看影院 | 国产成人333kkk | 久久久久免费网站 | 成人免费网站视频 | 日日操日日操 | 国产香蕉视频 | 97精品超碰一区二区三区 | 欧美片网站yy | 五月天婷婷免费视频 | 免费日韩一区二区 | 在线观看日韩免费视频 | 国产精品一区二区三区观看 | 丁香婷婷基地 | 亚洲开心色 | 日韩在线高清免费视频 | www.夜夜骑.com | 色婷婷精品大在线视频 | 久久欧美视频 | 91九色蝌蚪国产 | 97免费在线观看 | 久久国产精品久久精品国产演员表 | 在线免费高清一区二区三区 | 黄色在线免费观看网址 | 久久久精品视频网站 | 97超碰.com| 欧美精选一区二区三区 | 有码视频在线观看 | 91精品视频在线看 | 久久久免费观看视频 | 国产精品一区电影 | 天天插天天色 | 9ⅰ精品久久久久久久久中文字幕 | 日日色综合 | 国产资源av | 婷婷.com| 欧美成人在线免费 | 国产精品一区二区美女视频免费看 | 久久99精品久久只有精品 | 国产精品18久久久久久久网站 | 91大神电影 | 亚洲最新av在线 | 中文字幕视频一区二区 | 国产精品美女在线观看 | x99av成人免费| 亚洲国产精品成人女人久久 | 欧美一区二区三区免费观看 | 欧美a级免费视频 | 国产区免费在线 | 三级黄在线 | 手机在线看a | 亚洲欧洲一区二区在线观看 | 四虎影视成人精品国库在线观看 | 国产精品美女久久久久久2018 | 欧美日本一二三 | 日本xxxxav | 国产精品亚洲片在线播放 | 久草在线99 | 国产精品一区二区62 | 狠狠狠色丁香婷婷综合久久88 | 欧美大码xxxx | 久久久私人影院 | 成人资源在线 | 精品a在线 | 欧美午夜剧场 | h视频在线看 | www激情久久 | 99视频国产精品 | 99久久99久久精品 | 日韩欧美一区二区三区在线 | 手机av电影在线观看 | 韩国三级一区 | 激情网色 | www狠狠操| 免费成人短视频 | 国产精品免费看久久久8精臀av | 中文字幕精品一区久久久久 | 天天操夜夜操天天射 | 人人插人人做 | 亚洲电影图片小说 | 香蕉视频啪啪 | 草在线| 日本中文一区二区 | 色吧av色av| 六月丁香婷婷久久 | 97激情影院| 免费观看日韩av | 婷婷午夜 | 国产片免费在线观看视频 | 欧美在线视频二区 | 免费看久久 | 射综合网| 久久久久欠精品国产毛片国产毛生 | 成人久久久久 | 国产精品18久久久久久不卡孕妇 | 操久 | 日韩av网站在线播放 | 五月婷在线视频 | 日韩大片免费在线观看 | 丁香婷婷综合五月 | 天天干天天操天天爱 | 国产在线观看一区 | 亚洲精品自在在线观看 | 午夜视频亚洲 | 黄色国产在线观看 | 九九免费视频 | 国产精品成人免费精品自在线观看 | 91在线视频在线观看 | 黄色免费网站大全 | 少妇视频在线播放 | 四虎国产永久在线精品 | 久久久久久久久久亚洲精品 | 久久激情综合网 | 国产高清在线免费 | 91精品国产乱码 | 午夜精品在线看 | 久久高清精品 | 国产精品久久久久影院日本 | 国产精品国产自产拍高清av | 精品国产成人av | 黄色小说免费在线观看 | 亚洲精品久久久久www | 一区二区激情 | 久久久国产一区二区 | 国产精品一区二区无线 | 国产传媒中文字幕 | 亚洲成人动漫在线观看 | 色婷婷av国产精品 | 久久免费视频1 | 国产精品久久久久久久99 | 国产一区二区在线观看免费 | 欧美极品少妇xbxb性爽爽视频 | 国产+日韩欧美 | 99精品视频一区 | 午夜av电影院 | 五月天色婷婷丁香 | 麻豆视屏| 久久久国产网站 | www.亚洲黄色 | 日本巨乳在线 | 精品福利在线视频 | 2021国产视频 | 久久成人国产精品免费软件 | 亚洲午夜久久久久久久久 | 国产日韩中文字幕在线 | 亚洲一级免费电影 | 美女搞黄国产视频网站 | 精品国产成人在线 | 国产在线视频在线观看 | 亚洲国产视频直播 | 天天艹天天操 | 免费在线播放黄色 | 日韩精品一区二区三区三炮视频 | 人人超在线公开视频 | 精品国产亚洲在线 | 成年人app网址 | 国产理论在线 | 日本中文字幕在线免费观看 | 99久久久久免费精品国产 | 国产在线污| 中文字幕2021| 日本中文字幕在线播放 | www婷婷 | 国产精品成人国产乱 | 天天久久综合 | 九九热只有精品 | 日韩在线中文字幕 | 美女免费电影 | 国产精品一区二区av | 亚洲最新av在线网址 | 激情网色 | 亚洲激情在线播放 | 国产精品美女在线 | 美女视频久久 | 国产一级性生活 | 91热精品| 亚洲国产精品一区二区久久,亚洲午夜 | 日韩精品影视 | 国产精品av久久久久久无 | 亚洲日本一区二区在线 | 在线观看国产 | 国产精品久久久久久久久久不蜜月 | 久草av在线播放 | 天天操天天操天天操天天操天天操 | 成年人国产精品 | 婷婷六月网 | 国产精品丝袜久久久久久久不卡 | 天天插天天干天天操 | 最近最新中文字幕视频 | 日韩在线欧美在线 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 91麻豆精品国产91久久久使用方法 | 婷婷亚洲综合五月天小说 | 特级西西www44高清大胆图片 | 2022中文字幕在线观看 | 精品国产一区二区三区久久久 | 久久精品欧美一区二区三区麻豆 | 国内外成人免费在线视频 | 精品国产区在线 | 一区二区视频在线观看免费 | 在线观看成人一级片 | 国产99久久99热这里精品5 | 免费在线成人 | 成人黄大片 | 日韩欧美一区二区不卡 | 亚洲精品自在在线观看 | 国产一区二区电影在线观看 | 国产在线黄 | 国精产品永久999 | 亚洲精品乱码久久久一二三 | 国产黄免费 | 在线精品国产 | 免费黄色在线网站 | 日本久久久久久久久久 | 五月婷婷香蕉 | 三级av小说 | 色综合久久悠悠 | 色婷婷丁香| 国产中文字幕一区 | 精品国产一区二区三区日日嗨 | 婷婷五综合 | 精品中文字幕在线播放 | 亚洲国产一区二区精品专区 | 国产精久久 | 在线免费观看视频你懂的 | 亚洲天堂网在线视频观看 | 国产麻豆精品在线观看 | 九九有精品 | 国产一卡二卡在线 | 在线免费色 | 九九九热精品免费视频观看网站 | 亚洲男男gaygay无套同网址 | 精品99在线视频 | 成人91av| 91在线公开视频 | 97精品免费视频 | av网址最新 | 91麻豆国产福利在线观看 | 日韩在线免费视频观看 | 色综合久久88色综合天天人守婷 | 久久一本综合 | 97精品国产97久久久久久久久久久久 | av免费福利 | 99在线国产 | 国产视| 国产精品久久久久久久免费大片 | 国产精品99久久久久人中文网介绍 | 精品综合久久久 | 97国产精品久久 | 亚洲国产精品日韩 | 亚洲最新在线 | 黄色小说在线观看视频 | 精品不卡av| 久久久久久国产精品久久 | 99久久99久久精品国产片果冰 | 久久夜靖品 | 欧美日韩一区二区三区不卡 | 91精品中文字幕 | 成人毛片一区 | 精品欧美一区二区三区久久久 | 91麻豆文化传媒在线观看 | 国产精品69久久久久 | 欧美日比视频 | 国产日韩在线播放 | 久久一区精品 | av中文字幕av | 日韩电影黄色 | 日本久久久影视 | 在线观看91网站 | 久久不射网站 | 久久天天综合网 | 日本视频久久久 | 91麻豆文化传媒在线观看 | 免费观看午夜视频 | 五月婷婷电影网 | 中文字幕av在线 | 成人午夜电影免费在线观看 | 色婷婷丁香 | 三级小视频在线观看 | 91在线小视频 | 日韩av播放在线 | www国产在线 | 国产麻豆电影在线观看 | 久久99操| 91女人18片女毛片60分钟 | 人人爽人人乐 | 日韩电影在线观看一区二区三区 | 国产精品久久久久久久久久久久冷 | 91看片一区二区三区 | 91精品在线免费 | 国产xx视频| 天天干夜夜夜 | a视频免费 | 草久在线播放 | 999久久国产精品免费观看网站 | 久久国产精品99国产精 | 国产色区 | 日韩成人av在线 | 久操视频在线免费看 | 亚洲精品乱码久久久久久久久久 | 久久av高清 | 国产精品自产拍在线观看蜜 | 五月天婷婷狠狠 | 国产精品视频一二三 | 天天草天天草 | 亚洲欧洲成人精品av97 | 亚洲视频免费 | 久久国产精品二国产精品中国洋人 | 在线观看亚洲精品视频 | 精品一区二区av | 免费观看一级视频 | 伊人天天狠天天添日日拍 | 国产精品毛片一区二区在线看 | 亚洲成人xxx | 91精品在线免费观看视频 | 久草com | 色在线网站 | 精品1区二区 | 午夜色性片 | 天天色婷婷 | 69久久夜色精品国产69 | 色噜噜色噜噜 | 中文字幕 成人 | 91禁看片| 亚洲最新精品 | 97精品久久| 玖玖玖精品 | 超碰国产在线播放 | 国产免费小视频 | 在线看一级片 | 色爱区综合激月婷婷 | 日韩专区 在线 | av官网 | 久久午夜免费视频 | 伊人狠狠色丁香婷婷综合 | 国产精品久久久av | 婷婷丁香在线观看 | 国产精品美女免费看 | 国内精品小视频 | 99在线视频播放 | 欧美经典久久 | 久久只精品99品免费久23小说 | 2019中文在线观看 | 在线观看视频你懂 | 日韩av黄 | 在线小视频 | 久久久午夜精品理论片中文字幕 | 国产精品18久久久久久久 | 免费网站污 | 成人免费在线看片 | 91爱爱中文字幕 | www.xxxx欧美| 婷婷激情综合网 | 国产在线欧美在线 | 成人影片在线播放 | 一区二区中文字幕在线播放 | 色婷婷av国产精品 | 一个色综合网站 | 日韩欧美国产免费播放 | 欧美 日韩 性 | 九九九在线观看视频 | 91网页版在线观看 | 国产夫妻av在线 | 婷婷六月天综合 | 久久av伊人| 日韩一级成人av | 久久欧美视频 | 日韩欧美精选 | 亚洲男女精品 | 国产精品久久久久久久久久妇女 | 亚洲精品国产精品国自产观看浪潮 | 午夜影院日本 | 久久人人爽人人爽人人 | 99久久精品国产欧美主题曲 | 九九九在线观看视频 | 五月综合激情婷婷 | 国内精品视频一区二区三区八戒 | 欧美日韩国产一区二 | 欧美日韩高清一区二区 国产亚洲免费看 | 国产成人在线免费观看 | 免费在线黄色av | 久久免费国产精品1 | 日韩视频免费播放 | 欧美极品少妇xxxx | 18做爰免费视频网站 | 九九九国产 | 亚洲电影黄色 | 免费精品国产 | www.狠狠干| 丁香花在线视频观看免费 | 激情综合网婷婷 | 五月激情婷婷丁香 | 草久久影院 | 精品 一区 在线 | 干av在线 | 在线免费色视频 | 国产男男gay做爰 | 国产激情免费 | 手机av在线不卡 | 色av网站 | 欧美一性一交一乱 | 精品字幕 | 日韩动态视频 | 国产日韩欧美在线免费观看 | 欧美成天堂网地址 | 日韩在线 一区二区 | 免费十分钟 | 国产区 在线 | 精品国产一区二区三区四区vr | 天天躁日日躁狠狠躁av中文 | 亚洲视频免费在线观看 | 亚洲精品视频在线观看免费视频 | 亚洲精欧美一区二区精品 | 久久激情五月激情 | 成人av在线网址 | 国产精品第52页 | 欧美一区二区三区在线视频观看 | 国产精品99久久99久久久二8 | 免费在线观看黄 | 伊人五月| 成人黄色av免费在线观看 | www91在线观看| 中文字幕亚洲五码 | 美女免费黄视频网站 | 91av在线国产| 欧美精品在线观看 | 午夜91在线 | 国产视频精品久久 | 成人黄色电影免费观看 | 天天操天天谢 | 探花视频免费观看 | 日韩在线视 | 欧美日韩国产成人 | 少妇自拍av | 成人中心免费视频 | 九九在线精品视频 | 一区二区三区在线视频观看58 | 久久久91精品国产一区二区三区 | 国产黄色大全 | 超碰在线日韩 | 在线国产中文字幕 | 国内精品久久久久久久97牛牛 | 99r在线精品| 美女视频黄是免费的 | 免费观看第二部31集 | 国产精品毛片一区二区在线看 | se视频网址 | 亚洲无线视频 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 色偷偷网站视频 | 99久久日韩精品免费热麻豆美女 | 成人h电影 | 国产精品成人国产乱 | 国内成人综合 | 色婷婷综合久久久久中文字幕1 | 婷婷视频在线观看 | 欧美男同网站 | 午夜私人影院久久久久 | 一区二区三区动漫 | 国产日韩欧美在线观看 | 久久久九九 | 九九九在线观看视频 | 91视频3p | 91最新在线观看 | 国产精品久久久久久久久久99 | 亚洲激情在线视频 | 粉嫩av一区二区三区四区五区 | 在线视频观看成人 | 日精品| 美女网站久久 | 国产一区私人高清影院 | 中文字幕精品视频 | 婷婷激情欧美 | 成人av在线观 | 网址你懂的在线观看 | 亚洲国产美女久久久久 | 激情丁香婷婷 | 久久视频这里有久久精品视频11 | 一级理论片在线观看 | 日韩色在线观看 | 97狠狠操| 亚洲一区免费在线 | 久精品在线观看 | 国产夫妻自拍av | 精品美女久久久久 | 狠狠干天天干 | 久久午夜国产 | 成人免费视频播放 | 99精品免费在线 | 欧美性色综合网 | 国产91精品一区二区 | 日本色小说视频 | 人人超在线公开视频 | 国产黄a三级三级三级三级三级 | 日本三级全黄少妇三2023 | 亚洲黄色激情小说 | 国内精品久久久久久久影视简单 | 91系列在线观看 | 欧美疯狂性受xxxxx另类 | 久草国产在线 | 免费色黄 | 日韩欧美视频一区二区 | 久久精品男人的天堂 | 69人人| 青青久视频| av高清在线观看 | 黄色www免费 | 国语自产偷拍精品视频偷 | 久久久免费观看完整版 | 日本韩国精品一区二区在线观看 | 日日夜夜天天久久 | 国产美女免费观看 | 久日视频 | 日韩一区精品 | 欧美精品九九99久久 | 亚洲精品女人久久久 | 亚洲精品美女久久 | 国产精品18久久久久久久久久久久 | 日本性高潮视频 | 亚洲国产高清在线观看视频 | 三级av免费看 | 在线日韩av| 天天做日日爱夜夜爽 | 最近中文字幕视频完整版 | 天堂av在线7 | 日韩午夜精品福利 | 99热在线这里只有精品 | 九九九热精品 | 狠狠躁夜夜躁人人爽超碰91 | 亚洲精品午夜久久久久久久久久久 | 国产成人一区二区啪在线观看 | 天天色图 | 欧美三级高清 | 国产精品久久久久永久免费观看 | 91丨九色丨国产在线观看 | 1000部国产精品成人观看 | 免费观看全黄做爰大片国产 | 国产精品久久久久久超碰 | 国产精品久久综合 | 天天躁日日躁狠狠躁av中文 | 毛片永久新网址首页 | 9999在线| 久草网在线观看 | 久久精品久久综合 | 国产亚洲精品免费 | 999国产在线 | 日韩欧美高清在线观看 | 国产综合在线观看视频 | 91精品视频免费看 | 国产成人一级电影 | 91伊人| 开心丁香婷婷深爱五月 | 午夜婷婷网 | 91色蜜桃| 天天草天天色 | 青青河边草免费观看完整版高清 | 亚洲国产婷婷 | 九九九九九九精品任你躁 | 亚洲成av人影片在线观看 | 成人h电影 | se视频网址 | 中文字幕视频免费观看 | 婷婷久久一区二区三区 | 国产美女在线观看 | 欧美色图p | 天天综合天天做天天综合 | 国产精品99久久久 | 国产在线视频一区二区 | 亚洲精品国偷拍自产在线观看 | 国产成人高清 | 免费久久99精品国产婷婷六月 | 天天做天天爱天天爽综合网 | 免费人成在线观看 | 国产精品免费看 | 在线小视频 | 日韩有码网站 | a在线观看国产 | 欧美日高清视频 | 五月婷婷丁香在线观看 | 美女性爽视频国产免费app | 免费合欢视频成人app | 在线激情小视频 | 丁香六月婷婷综合 | 天天五月天色 | 日韩免费观看av | 在线观看一 | 国产黄色免费电影 | 91在线视频一区 | 天天透天天插 | 91激情 | 国产免费三级在线观看 | 97视频免费播放 | 国产精品久久久久久久久久尿 | 亚洲欧美视频一区二区三区 | 伊人久久五月天 | 99精品在线 | 你操综合| 婷婷午夜 | 四虎成人精品永久免费av九九 | 国产+日韩欧美 | 成人性生交大片免费观看网站 | 最近久乱中文字幕 | 免费亚洲视频在线观看 | 黄色三级视频片 | 国产精品对白一区二区三区 | 亚洲国产日韩欧美 | 人人爱爱 | 玖玖综合网 | 欧美精品亚洲精品日韩精品 | 久久久久久久久久久久国产精品 | 久久黄色成人 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 精品一区av| 亚洲一级片免费观看 | 五月天婷亚洲天综合网鲁鲁鲁 | 999国内精品永久免费视频 | 久久久国产精品免费 | 狠狠狠色丁香婷婷综合激情 | 亚洲精品在线观看网站 | 热精品 | 久久国产成人午夜av影院潦草 | 成片人卡1卡2卡3手机免费看 | 最近中文字幕大全 | 久久精品99国产精品酒店日本 | 午夜精品福利一区二区三区蜜桃 | 国产日韩欧美在线观看 | 夜色资源网 | 中文字幕资源站 | 99久久精品免费看国产免费软件 | 激情 亚洲 | 国产人成精品一区二区三 | 韩国av电影网 | 午夜精品久久久久久久99 | 麻豆精品视频在线观看免费 | 久久精品99久久 | 久久狠狠一本精品综合网 | 色欧美成人精品a∨在线观看 | 国产激情电影综合在线看 | 国产精品久久久久婷婷二区次 | 亚洲综合五月 | 欧美一区日韩一区 | 九九免费视频 | 在线一级片 | 一区二区三区在线影院 | 久久一二三四 | 天天干天天搞天天射 | 国产99色| 五月开心六月伊人色婷婷 | 国产精品久久久久毛片大屁完整版 | 狠狠色丁香久久婷婷综 | 欧美激情视频在线观看免费 | 国产精品18久久久久久久久久久久 | 国内精品久久久久久久影视简单 | 亚洲国产剧情av | 精品xxx| av网站免费线看精品 | www.天天操 | 免费在线观看日韩欧美 | 亚洲精品乱码久久久久久高潮 | 久久观看 | 国产精品毛片一区视频 | 在线看片一区 | 国产精品一区二区三区免费视频 | 久久少妇| 国产精品免费视频一区二区 | 在线观看国产日韩欧美 | www.夜夜干.com| 久久精品亚洲精品国产欧美 | 欧美另类高清 | 国产经典三级 | 国产精品四虎 | 在线观看日本韩国电影 | 免费av福利| 国产精品99久久久精品 | 欧美精品乱码久久久久久 | 久久久午夜精品理论片中文字幕 | 日本黄色一级电影 | 久久久网| 成年人在线观看免费视频 | 久艹在线免费观看 | 亚洲午夜精品久久久 | 精品91视频 | 2023年中文无字幕文字 | 韩国精品一区二区三区六区色诱 | 视频在线观看入口黄最新永久免费国产 | 青青河边草观看完整版高清 | 久久成人午夜视频 | 久久精品久久99 | 日韩国产精品毛片 | 国产小视频福利在线 | 免费在线激情视频 | 国产成人精品亚洲a | 国产99re | www.看片网站 | 狠狠色丁香婷婷综合基地 | 久久久99精品免费观看乱色 | 日韩高清不卡在线 | 午夜精品一区二区三区免费 | 久久激情视频网 | 99热这里只有精品免费 | 99热精品在线 | 在线播放91| 亚洲人视频在线 | 在线免费观看亚洲视频 | 国产亚洲精品久久久久久移动网络 |