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

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

?? ch04.htm

?? 一天之內學會VC#. 主要介紹VC#的各種應用和示例
?? HTM
?? 第 1 頁 / 共 3 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>

<HEAD>
	
	<TITLE>Teach Yourself Visual C++&#174; 5 in 24 Hours -- Hour 4 -- Dialog Boxes and C++ Classes</TITLE>
</HEAD>

<BODY TEXT="#000000" BGCOLOR="#FFFFFF">

<CENTER>
<H1><IMG SRC="sams.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/sams.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM" BORDER="0"><BR>
<FONT COLOR="#000077">Teach Yourself Visual C++&#174; 5 in 24 Hours</FONT></H1>
</CENTER>
<CENTER>
<P><A HREF="ch03.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/ch03/ch03.htm"><IMG SRC="previous.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/previous.gif" WIDTH="128" HEIGHT="28"
ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="ch05.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/ch05/ch05.htm"><IMG
SRC="next.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/next.gif" WIDTH="128" HEIGHT="28" ALIGN="BOTTOM" ALT="Next chapter"
BORDER="0"></A><A HREF="index-1.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/index.htm"><IMG SRC="contents.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/contents.gif" WIDTH="128"
HEIGHT="28" ALIGN="BOTTOM" ALT="Contents" BORDER="0"></A> 
<HR>

</CENTER>
<CENTER>
<H1><FONT COLOR="#000077">- Hour 4 -<BR>
Dialog Boxes and C++ Classes</FONT></H1>
</CENTER>
<P>In this hour, you will learn about two fundamental concepts used when creating
Windows programs using C++: object-oriented design and dialog boxes. The following
topics are covered in this hour:

<UL>
	<LI>An introduction to object-oriented design concepts<BR>
	<BR>
	
	<LI>Using dialog boxes in your Windows applications<BR>
	<BR>
	
	<LI>Creating dialog-based projects<BR>
	<BR>
	
	<LI>Adding controls to dialog boxes<BR>
	<BR>
	
	<LI>Creating new classes using ClassWizard
</UL>

<P>Also during this hour, you will create two sample projects that demonstrate how
you can use dialog boxes in your applications.
<H2><FONT COLOR="#000077"><B>What Is Object-Oriented Design?</B></FONT></H2>
<P>One of the design goals for the C++ language was to provide a language that supported
object-oriented programming and design. <I>Object-oriented design</I> involves classifying
real-world objects and actions as classes that can be created, manipulated, and destroyed.</P>
<P>The data that makes up an object, and the functions that are performed on that
object, are combined to form a <I>class</I>, or a description of that object. Classes
can inherit functionality from other objects, and you easily can add new classes
that leverage existing classes.


<BLOCKQUOTE>
	<P>
<HR>
<B> </B><FONT COLOR="#000077"><B>Just a Minute:</B></FONT><B> </B>Object-oriented
	programming is not new; the first language to support object-oriented programming,
	Simula, has been around since the mid-1960s. 
<HR>


</BLOCKQUOTE>

<H3><FONT COLOR="#000077"><B>Why Use Object-Oriented Design?</B></FONT></H3>
<P>In traditional, structured design, the data manipulated by a program and the functions
that manipulate the data are separate. Reusing parts of a design built with structured
design techniques often is difficult unless the new design is very similar to the
old design.</P>
<P>Object-oriented design is useful because it can be used to create designs that
can be reused and extended. A design, or a portion of a design, can be reused in
future programs much like a hardware component, such as a computer chip, a disk drive,
or a sound card. Object-oriented designs describe the object's class completely,
so each class is easily reused because the data and functions described by the class
are integrated.</P>
<P>Because you can hide the implementation of a class behind an interface, changing
the implementation details of a class without affecting users of that class--as long
as the interface doesn't change--is easy. For example, the Tab control was not available
in versions of Windows before Windows 95. The MFC <TT>CPropertyPage</TT> class was
rewritten for MFC 4.0 to take advantage of the new Tab control without impacting
users of that class, except that the class is now more efficient.
<H3><FONT COLOR="#000077"><B>Describing Objects in a Class</B></FONT></H3>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>In C++, objects are described
by a <I>class</I>. A class is just a description of the object that can be created
and the actions that can be performed on it.</P>
<P>A C++ class has two main parts:

<UL>
	<LI>The <I>class declaration</I>. This contains the class interface and information
	about data members for the class. The class interface usually is located in a header
	file having a <TT>.H</TT> suffix. Any file in your program that uses the class must
	use the <TT>#include</TT> directive so that the class declaration is added to the
	source file by the preprocessor.<BR>
	<BR>
	
	<LI>The <I>class implementation</I>. This includes all the member functions that
	have been declared as part of the class. The class implementation usually is located
	in a file that has a <TT>.CPP</TT> suffix.
</UL>

<H2><FONT COLOR="#000077"><B>What Is a Dialog Box?</B></FONT></H2>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A <I>dialog box</I> is a
specialized window that is used to provide feedback or collect input from the user.
Dialog boxes come in all shapes and sizes, ranging from simple message boxes that
display single lines of text to large dialog boxes that contain sophisticated controls.</P>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>The most commonly used type
of dialog box is a <I>modal dialog box</I>. A modal dialog box prevents the user
from performing any other activity with the program until the dialog box is dismissed.</P>
<P>Dialog boxes are also used for one-way communication with a user, such as &quot;splash
screens&quot; used to display copyright and startup information as a program is launched.
The opening screen displayed by the Visual C++ Developer Studio and Microsoft Word
are two examples of dialog boxes used for one-way communication. Dialog boxes are
sometimes used to notify the user about the progress of a lengthy operation.


<BLOCKQUOTE>
	<P>
<HR>
<B> </B><FONT COLOR="#000077"><B>Just a Minute:</B></FONT><B> </B>Dialog boxes provide
	a convenient way for users to interact with Windows programs. Users expect most interaction
	with a Windows program to take place through dialog boxes. All dialog boxes have
	certain things in common; these common characteristics make the user's life easier,
	because users don't need to learn and relearn how dialog boxes work from program
	to program. 
<HR>


</BLOCKQUOTE>

<P>There are several different types of dialog boxes, and each of them has a specific
purpose. This hour covers three main types of dialog boxes:

<UL>
	<LI>Message boxes<BR>
	<BR>
	
	<LI>Modal dialog boxes<BR>
	<BR>
	
	<LI>Modeless dialog boxes
</UL>

<H3><FONT COLOR="#000077"><B>Understanding Message Boxes</B></FONT></H3>
<P>The simplest type of dialog box is the message box, which is used to display information.
This type of dialog box is so simple you can call it with just one line of code using
the MFC class library. For example, to display a message box using default parameters
supplied by MFC, just use this line:</P>
<PRE><FONT COLOR="#0066FF"><TT>AfxMessageBox( &quot;Hello World&quot; );</TT>
</FONT></PRE>
<P>This line of code creates a message box with an exclamation mark inside a yellow
triangle. There are several additional options for the icon displayed in a message
box, as you will see later.
<H3><FONT COLOR="#000077"><B>Using Dialog Boxes for Input</B></FONT></H3>
<P>When most people think of dialog boxes, they think of the dialog boxes that collect
input from a user. Dialog boxes are often used to contain controls that are used
to handle user input. You can include in a dialog box a wide range of controls. In
fact, a major portion of this book covers the various types of controls available
in Windows.</P>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>Some dialog boxes are needed
so often in Windows programs that they have been included as part of the operating
system. These dialog boxes, known as <I>common dialog boxes</I>, are available by
calling a function and don't require you to create a dialog box resource. There are
common dialog boxes for opening and selecting files, choosing fonts and colors, and
performing find and replace operations. Many of the common dialog boxes are covered
later in the book. For example, in Hour 13, &quot;Fonts,&quot; you will use a common
dialog box to select a font.</P>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A dialog box that is <I>modeless</I>
enables other activities to be carried out while the dialog box is still open.</P>
<P>An example of a modeless dialog box is the Find and Replace common dialog box
used by Developer Studio. When the dialog box is open, you can still make selections
from the main menu, and even open other dialog boxes. In contrast, all other Developer
Studio dialog boxes are modal. As long as they are open, the user cannot interact
with the other parts of Developer Studio.
<H2><FONT COLOR="#000077"><B>How Are Dialog Boxes Used?</B></FONT></H2>
<P>Developer Studio makes using dialog boxes in a Windows program easy. All the necessary
steps are automated, and the tools used to create the dialog box and include it in
a project are all integrated.
<H3><FONT COLOR="#000077"><B>Adding Message Boxes</B></FONT></H3>
<P>As discussed earlier, you can add message boxes to your program using a single
line of code. You must supply at least a single parameter: the text that is displayed
inside the dialog box. Optionally, you can also specify an icon style and a button
arrangement pattern. The types of icons that are available for message boxes are
shown in Figure 4.1.</P>
<P><A NAME="01"></A><A HREF="01.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/ch04/01.htm"><B>Figure 4.1.</B></A> <BR>
<I>Icons you can include in a message box.</I></P>
<P>Each of the icons in Figure 4.1 has a specific meaning. When most Windows programs
display a message box, they use a standard icon for each message. When programs use
the same icons consistently, users find it much easier to understand the meanings
of information provided with message boxes. The meaning and style name for each icon
is shown in Table 4.1.
<H4><FONT COLOR="#000077">Table 4.1. Icons used in Windows message-box dialog boxes.</FONT></H4>
<P>
<TABLE BORDER="1">
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><B>Icon Displayed</B></TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><B>Meaning</B></TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><B>Message Box Style</B></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP">Exclamation mark</TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Warning</TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_ICONEXCLAMATION</TT></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP">An &quot;i&quot; in a circle</TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Information</TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_ICONINFORMATION</TT></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP">Question mark</TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Question</TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_ICONQUESTION</TT></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP">Stop sign</TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Error</TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_ICONSTOP</TT></TD>
	</TR>
</TABLE>
</P>
<P>In addition, you can specify a button arrangement to be used in the message box.
By default, a single button labeled OK is included in the message box. However, sometimes
it's convenient to ask a user a simple question and collect an answer. One use for
these button arrangements is to ask the user what action to take during an error.
For example, the following code displays a message box that contains a question mark
icon and asks the user whether the current file should be deleted:</P>
<PRE><FONT COLOR="#0066FF"><TT>int nChoice = AfxMessageBox( &quot;Overwrite existing file?&quot;,</TT>
<TT>                             MB_YESNOCANCEL | MB_ICONQUESTION );</TT>
<TT>if( nChoice == IDYES )</TT>
<TT>{</TT>
<TT>    // Overwrite file</TT>
<TT>}</TT>
</FONT></PRE>
<P>The user can choose between buttons marked Yes, No, and Cancel. Table 4.2 gives
the different button arrangements possible for a message box.
<H4><FONT COLOR="#000077">Table 4.2. Button arrangements.</FONT></H4>
<P>
<TABLE BORDER="1">
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><B>Message Box Style</B></TD>
		<TD ALIGN="LEFT" VALIGN="TOP"><B>Buttons Included in Dialog Box</B></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_ABORTRETRYIGNORE</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Abort, Retry, and Ignore</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_OK</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">OK</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_OKCANCEL</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">OK and Cancel</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_RETRYCANCEL</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Retry and Cancel</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_YESNO</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Yes and No</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT" VALIGN="TOP"><TT>MB_YESNOCANCEL</TT></TD>
		<TD ALIGN="LEFT" VALIGN="TOP">Yes, No, and Cancel</TD>
	</TR>
</TABLE>
</P>
<P>The message-box return value indicates the button selected by the user. Table
4.3 is a list of possible return values and the choice made by the user.
<H4><FONT COLOR="#000077">Table 4.3. Message-box return values.</FONT></H4>
<P>
<TABLE BORDER="1">
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><B>Return Value</B></TD>
		<TD ALIGN="LEFT"><B>Button Pressed</B></TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDABORT</TT></TD>
		<TD ALIGN="LEFT">Abort</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDCANCEL</TT></TD>
		<TD ALIGN="LEFT">Cancel</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDIGNORE</TT></TD>
		<TD ALIGN="LEFT">Ignore</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDNO</TT></TD>
		<TD ALIGN="LEFT">No</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDOK</TT></TD>
		<TD ALIGN="LEFT">OK</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDRETRY</TT></TD>
		<TD ALIGN="LEFT">Retry</TD>
	</TR>
	<TR ALIGN="LEFT" rowspan="1">
		<TD ALIGN="LEFT"><TT>IDYES</TT></TD>
		<TD ALIGN="LEFT">Yes</TD>
	</TR>
</TABLE>

<H3><FONT COLOR="#000077"><B>Using the Bitwise <TT>OR</TT> Operator</B></FONT></H3>
<P>In an earlier code fragment, a vertical bar was used to separate two different
options for the <TT>AfxMessageBox</TT> function. The vertical bar is the <I>bitwise
<TT>OR</TT> operator</I>, which is used to combine the bit patterns of two or more
values.</P>
<P>Unlike adding two operands, the values are combined &quot;bitwise,&quot; meaning
that the two values are compared bit by bit. If a particular bit is high in either
operand, the result will have that bit enabled. If a particular bit is low in both

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产99久久久久| 国产精品久久久久久久久果冻传媒 | 视频精品一区二区| 成人aa视频在线观看| 日韩三级高清在线| 亚洲成人av中文| 色天天综合久久久久综合片| 久久女同精品一区二区| 男人的j进女人的j一区| 欧美人动与zoxxxx乱| 亚洲精品国产成人久久av盗摄| 国产成都精品91一区二区三| 日韩女优毛片在线| 日韩电影一区二区三区四区| 欧美日韩一区二区电影| 亚洲精品乱码久久久久久黑人 | 国产91露脸合集magnet| 精品国产一区a| 久久精品免费观看| 日韩欧美高清一区| 精品在线免费观看| 欧美一级在线视频| 麻豆精品蜜桃视频网站| 欧美成人一区二区三区片免费 | 99久久国产免费看| 国产精品乱人伦| 国产69精品一区二区亚洲孕妇| 久久综合色之久久综合| 国内一区二区在线| www激情久久| 国产福利一区二区三区视频 | 99re热这里只有精品视频| 国产精品久久免费看| 成人aa视频在线观看| 中文字幕佐山爱一区二区免费| 91丝袜美腿高跟国产极品老师| 亚洲欧美在线高清| 欧美又粗又大又爽| 日韩黄色在线观看| 日韩三区在线观看| 国产麻豆午夜三级精品| 国产嫩草影院久久久久| 91网页版在线| 日韩综合小视频| 精品国产乱码久久久久久久久| 国产资源在线一区| 国产精品对白交换视频 | 97久久精品人人澡人人爽| 亚洲少妇30p| 在线播放视频一区| 国产综合久久久久久久久久久久| 中文字幕久久午夜不卡| 欧美色图在线观看| 黄色精品一二区| 中文字幕亚洲欧美在线不卡| 欧美性色欧美a在线播放| 男人的天堂亚洲一区| 国产精品色婷婷| 欧美少妇bbb| 国产精品资源网| 亚洲国产精品精华液网站| 精品福利一区二区三区免费视频| 不卡的电影网站| 日韩精品一级中文字幕精品视频免费观看 | 日本aⅴ亚洲精品中文乱码| 久久精品无码一区二区三区| 色噜噜偷拍精品综合在线| 青青草精品视频| 亚洲欧美另类久久久精品 | 亚洲色图一区二区三区| 日韩精品一区二区三区视频播放| av高清不卡在线| 蜜臀国产一区二区三区在线播放| 国产精品欧美一区二区三区| 欧美高清视频一二三区| 99久久精品国产导航| 久久精品国内一区二区三区| 亚洲欧美成aⅴ人在线观看| 日韩欧美久久久| 色噜噜夜夜夜综合网| 国产成人精品亚洲777人妖| 亚洲v中文字幕| 亚洲欧美一区二区三区久本道91| 久久综合久久综合亚洲| 欧美日韩日日摸| 91国内精品野花午夜精品| 国产99一区视频免费 | 久久久亚洲综合| 欧美日韩黄视频| aaa欧美色吧激情视频| 国产一区二区电影| 国产夜色精品一区二区av| 欧美日本乱大交xxxxx| 91麻豆免费在线观看| 床上的激情91.| 国产一区二区三区高清播放| 日韩成人免费电影| 午夜精品久久久久久久久久| 一区二区三区不卡视频| 亚洲欧美怡红院| 国产精品美女久久久久久| 久久免费的精品国产v∧| 日韩欧美视频一区| 欧美电视剧在线观看完整版| 7878成人国产在线观看| 欧美视频自拍偷拍| 精品视频免费在线| 欧美色视频在线| 欧美精品乱码久久久久久| 欧美性受xxxx黑人xyx| 在线观看一区不卡| 欧亚洲嫩模精品一区三区| 色噜噜狠狠成人中文综合| 色狠狠综合天天综合综合| 91麻豆.com| 在线观看免费视频综合| 欧美亚洲国产怡红院影院| 欧美日韩成人在线一区| 欧美一区二区免费视频| 精品国产乱码久久久久久闺蜜| 精品美女在线观看| 欧美经典一区二区三区| 国产精品色在线| 一区二区三区不卡视频| 日韩和欧美的一区| 久久er99精品| 成人h版在线观看| 色88888久久久久久影院按摩 | 亚洲成人一二三| 日韩激情一二三区| 国内精品国产成人国产三级粉色| 国产精品系列在线观看| 一本久久a久久精品亚洲| 欧美日韩亚洲综合一区二区三区 | 自拍视频在线观看一区二区| 亚洲欧美色综合| 蜜桃av一区二区| 成+人+亚洲+综合天堂| 欧美性猛交xxxx黑人交| 欧美一二三区在线观看| 国产精品无人区| 午夜一区二区三区视频| 激情另类小说区图片区视频区| 99精品欧美一区二区蜜桃免费| 欧美三级视频在线| 久久精品一区二区三区四区| 亚洲欧美色一区| 美女视频免费一区| 色婷婷一区二区| 久久亚洲精精品中文字幕早川悠里| 日韩美女视频19| 久久91精品久久久久久秒播| 色综合婷婷久久| 精品国产一区二区三区久久影院 | 最新高清无码专区| 日韩国产一二三区| 91尤物视频在线观看| 日韩欧美中文字幕制服| 亚洲欧美日韩久久精品| 激情综合五月天| 欧美日韩三级视频| 亚洲欧洲成人自拍| 韩国精品免费视频| 91麻豆精品国产91久久久资源速度 | 亚洲va国产天堂va久久en| 国产白丝精品91爽爽久久| 欧美一区二区三区系列电影| 国产精品久久久久久久久免费相片| 奇米四色…亚洲| 欧美在线视频日韩| 最近日韩中文字幕| 国产69精品久久99不卡| 精品免费日韩av| 日韩激情视频网站| 色欧美乱欧美15图片| 国产精品美女视频| 国产成人精品免费在线| 精品久久久久久无| 午夜视黄欧洲亚洲| 欧美专区日韩专区| 一区二区三区在线视频免费观看| 懂色av一区二区三区免费观看| 欧美本精品男人aⅴ天堂| 日韩激情一二三区| 在线不卡a资源高清| 日日骚欧美日韩| 欧美一区二区三区四区五区| 亚洲成人免费电影| 欧美三电影在线| 亚洲综合在线五月| 91福利国产精品| 夜夜亚洲天天久久| 在线这里只有精品| 亚洲成人免费视频| 欧美精三区欧美精三区| 午夜精品久久久久久久久久久| 欧美日韩精品一区二区三区四区| 亚洲另类在线一区| 欧美影院一区二区三区| 图片区小说区区亚洲影院|