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

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

?? scrollbar.java

?? 源碼為Eclipse開源開發平臺桌面開發工具SWT的源代碼,
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/******************************************************************************* * Copyright (c) 2000, 2004 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html *  * Contributors: *     IBM Corporation - initial API and implementation *******************************************************************************/package org.eclipse.swt.widgets;import org.eclipse.swt.internal.win32.*;import org.eclipse.swt.*;import org.eclipse.swt.graphics.*;import org.eclipse.swt.events.*;/** * Instances of this class are selectable user interface * objects that represent a range of positive, numeric values.  * <p> * At any given moment, a given scroll bar will have a  * single <em>selection</em> that is considered to be its * value, which is constrained to be within the range of * values the scroll bar represents (that is, between its * <em>minimum</em> and <em>maximum</em> values). * </p><p> * Typically, scroll bars will be made up of five areas: * <ol> * <li>an arrow button for decrementing the value</li> * <li>a page decrement area for decrementing the value by a larger amount</li> * <li>a <em>thumb</em> for modifying the value by mouse dragging</li> * <li>a page increment area for incrementing the value by a larger amount</li> * <li>an arrow button for incrementing the value</li> * </ol> * Based on their style, scroll bars are either <code>HORIZONTAL</code> * (which have a left facing button for decrementing the value and a * right facing button for incrementing it) or <code>VERTICAL</code> * (which have an upward facing button for decrementing the value * and a downward facing buttons for incrementing it). * </p><p> * On some platforms, the size of the scroll bar's thumb can be * varied relative to the magnitude of the range of values it * represents (that is, relative to the difference between its * maximum and minimum values). Typically, this is used to * indicate some proportional value such as the ratio of the * visible area of a document to the total amount of space that * it would take to display it. SWT supports setting the thumb * size even if the underlying platform does not, but in this * case the appearance of the scroll bar will not change. * </p><p> * Scroll bars are created by specifying either <code>H_SCROLL</code>, * <code>V_SCROLL</code> or both when creating a <code>Scrollable</code>. * They are accessed from the <code>Scrollable</code> using * <code>getHorizontalBar</code> and <code>getVerticalBar</code>. * </p><p> * Note: Scroll bars are not Controls.  On some platforms, scroll bars * that appear as part of some standard controls such as a text or list * have no operating system resources and are not children of the control. * For this reason, scroll bars are treated specially.  To create a control * that looks like a scroll bar but has operating system resources, use * <code>Slider</code>.  * </p> * <dl> * <dt><b>Styles:</b></dt> * <dd>HORIZONTAL, VERTICAL</dd> * <dt><b>Events:</b></dt> * <dd>Selection</dd> * </dl> * <p> * Note: Only one of the styles HORIZONTAL and VERTICAL may be specified. * </p><p> * IMPORTANT: This class is <em>not</em> intended to be subclassed. * </p> * * @see Slider * @see Scrollable * @see Scrollable#getHorizontalBar * @see Scrollable#getVerticalBar */public class ScrollBar extends Widget {		Scrollable parent;	int increment, pageIncrement;/** * Constructs a new instance of this class given its parent * and a style value describing its behavior and appearance. * <p> * The style value is either one of the style constants defined in * class <code>SWT</code> which is applicable to instances of this * class, or must be built by <em>bitwise OR</em>'ing together  * (that is, using the <code>int</code> "|" operator) two or more * of those <code>SWT</code> style constants. The class description * lists the style constants that are applicable to the class. * Style bits are also inherited from superclasses. * </p> * * @param parent a composite control which will be the parent of the new instance (cannot be null) * @param style the style of control to construct * * @exception IllegalArgumentException <ul> *    <li>ERROR_NULL_ARGUMENT - if the parent is null</li> * </ul> * @exception SWTException <ul> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent</li> *    <li>ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass</li> * </ul> * * @see SWT#HORIZONTAL * @see SWT#VERTICAL * @see Widget#checkSubclass * @see Widget#getStyle */ScrollBar (Scrollable parent, int style) {	super (parent, checkStyle (style));	this.parent = parent;	createWidget ();}/** * Adds the listener to the collection of listeners who will * be notified when the receiver's value changes, by sending * it one of the messages defined in the <code>SelectionListener</code> * interface. * <p> * When <code>widgetSelected</code> is called, the event object detail field contains one of the following values: * <code>0</code> - for the end of a drag. * <code>SWT.DRAG</code>. * <code>SWT.HOME</code>. * <code>SWT.END</code>. * <code>SWT.ARROW_DOWN</code>. * <code>SWT.ARROW_UP</code>. * <code>SWT.PAGE_DOWN</code>. * <code>SWT.PAGE_UP</code>. * <code>widgetDefaultSelected</code> is not called. * </p> * * @param listener the listener which should be notified * * @exception IllegalArgumentException <ul> *    <li>ERROR_NULL_ARGUMENT - if the listener is null</li> * </ul> * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> * * @see SelectionListener * @see #removeSelectionListener * @see SelectionEvent */public void addSelectionListener (SelectionListener listener) {	checkWidget();	if (listener == null) error (SWT.ERROR_NULL_ARGUMENT);	TypedListener typedListener = new TypedListener(listener);	addListener (SWT.Selection,typedListener);	addListener (SWT.DefaultSelection,typedListener);}static int checkStyle (int style) {	return checkBits (style, SWT.HORIZONTAL, SWT.VERTICAL, 0, 0, 0, 0);}void createWidget () {	increment = 1;	pageIncrement = 10;	/*	* Do not set the intial values of the maximum	* or the thumb.  These values normally default	* to 100 and 10 but may have been set already	* by the widget that owns the scroll bar.  For	* example, a scroll bar that is created for a	* list widget, setting these defaults would	* override the initial values provided by the	* list widget.	*/}public void dispose () {	if (isDisposed()) return;	if (!isValidThread ()) error (SWT.ERROR_THREAD_INVALID_ACCESS);	int hwnd = hwndScrollBar (), type = scrollBarType ();	super.dispose ();	if (OS.IsWinCE) {		SCROLLINFO info = new SCROLLINFO ();		info.cbSize = SCROLLINFO.sizeof;		info.fMask = OS.SIF_RANGE | OS.SIF_PAGE;		info.nPage = 101;		info.nMax = 100;		info.nMin = 0;		OS.SetScrollInfo (hwnd, type, info, true);	} else {		OS.ShowScrollBar (hwnd, type, false);	}}/** Not currently used.*/Rectangle getBounds () {//	checkWidget ();	parent.forceResize ();	RECT rect = new RECT ();	OS.GetClientRect (parent.handle, rect);	int x = 0, y = 0, width, height;	if ((style & SWT.HORIZONTAL) != 0) {		y = rect.bottom - rect.top;		width = rect.right - rect.left;		height = OS.GetSystemMetrics (OS.SM_CYHSCROLL);	} else {		x = rect.right - rect.left;		width = OS.GetSystemMetrics (OS.SM_CXVSCROLL);		height = rect.bottom - rect.top;	}	return new Rectangle (x, y, width, height);}/** * Returns <code>true</code> if the receiver is enabled, and * <code>false</code> otherwise. A disabled control is typically * not selectable from the user interface and draws with an * inactive or "grayed" look. * * @return the receiver's enabled state * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> *  * @see #isEnabled */public boolean getEnabled () {	checkWidget();	return (state & DISABLED) == 0;}/** * Returns the amount that the receiver's value will be * modified by when the up/down (or right/left) arrows * are pressed. * * @return the increment * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */public int getIncrement () {	checkWidget();	return increment;}/** * Returns the maximum value which the receiver will allow. * * @return the maximum * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */public int getMaximum () {	checkWidget();	SCROLLINFO info = new SCROLLINFO ();	info.cbSize = SCROLLINFO.sizeof;	info.fMask = OS.SIF_RANGE;	int hwnd = hwndScrollBar ();	int type = scrollBarType ();	OS.GetScrollInfo (hwnd, type, info);	return info.nMax;}/** * Returns the minimum value which the receiver will allow. * * @return the minimum * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */public int getMinimum () {	checkWidget();	SCROLLINFO info = new SCROLLINFO ();	info.cbSize = SCROLLINFO.sizeof;	info.fMask = OS.SIF_RANGE;	int hwnd = hwndScrollBar ();	int type = scrollBarType ();	OS.GetScrollInfo (hwnd, type, info);	return info.nMin;}/** * Returns the amount that the receiver's value will be * modified by when the page increment/decrement areas * are selected. * * @return the page increment * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */public int getPageIncrement () {	checkWidget();	return pageIncrement;}/** * Returns the receiver's parent, which must be scrollable. * * @return the receiver's parent * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul> */public Scrollable getParent () {	checkWidget();	return parent;}/** * Returns the single <em>selection</em> that is the receiver's value. * * @return the selection * * @exception SWTException <ul> *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> * </ul>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久一二三国产| 日韩黄色小视频| 日韩精品一区二区三区三区免费| 日韩欧美黄色影院| 国产又黄又大久久| 《视频一区视频二区| 日韩欧美国产成人一区二区| 91免费观看视频| 久久精品在线观看| 欧美日韩一区二区三区视频| 久久国产乱子精品免费女| 水野朝阳av一区二区三区| 免费av网站大全久久| 日韩午夜小视频| 911精品国产一区二区在线| 91精品国产欧美一区二区18| 中文字幕第一区第二区| 欧美日韩高清不卡| 在线视频国内自拍亚洲视频| 免费一级欧美片在线观看| 亚洲精品国产成人久久av盗摄| 欧美激情一二三区| 亚洲图片欧美激情| 一区二区三区四区视频精品免费| 日韩中文字幕一区二区三区| 亚洲免费av观看| 国产精品伦一区二区三级视频| 欧美一级二级在线观看| 91精品国产色综合久久ai换脸| 欧亚一区二区三区| 97超碰欧美中文字幕| 在线播放亚洲一区| 一本色道亚洲精品aⅴ| 亚洲精品亚洲人成人网| 亚洲精品久久久蜜桃| 国内精品视频666| 亚洲啪啪综合av一区二区三区| 久久久精品免费观看| 亚洲欧洲三级电影| 亚洲bdsm女犯bdsm网站| 国产99久久久久久免费看农村| 亚洲精品中文在线| 7777精品伊人久久久大香线蕉完整版 | 欧美激情中文不卡| 一区二区三区高清不卡| 精品在线一区二区三区| 丝袜亚洲另类丝袜在线| 精品久久久久久久一区二区蜜臀| 波多野结衣中文一区| 欧美精品久久一区二区三区| 欧美一区二视频| 国产精品三级电影| 日韩中文字幕亚洲一区二区va在线| 国产一区二区伦理| 欧美亚洲国产一卡| 亚洲激情第一区| 在线观看91精品国产麻豆| 精品国一区二区三区| 亚洲综合免费观看高清在线观看| 极品尤物av久久免费看| 欧美成人a视频| 麻豆精品在线播放| 7777女厕盗摄久久久| 国产一区二区三区在线观看免费视频| 日韩三级在线免费观看| 岛国精品在线观看| 天天综合色天天综合| 精品国产1区二区| 91美女片黄在线观看91美女| 午夜在线成人av| 国产免费观看久久| 一区二区三区四区在线免费观看| 精品国产一二三| 欧美日韩亚洲不卡| 国产精品18久久久久久久久久久久 | 久久精品网站免费观看| 国产精品99精品久久免费| 国产精品人人做人人爽人人添| 国产原创一区二区三区| 久久久久国产精品麻豆ai换脸| 久久精品国产亚洲一区二区三区| 精品一区二区三区免费| 欧美视频一二三区| av亚洲精华国产精华| 国产一区二区三区免费看 | www.亚洲人| 成人欧美一区二区三区| 色国产综合视频| 日韩精品五月天| 亚洲国产精品人人做人人爽| 国产欧美一区二区精品性| www..com久久爱| 午夜av电影一区| 国产女人18水真多18精品一级做| 99在线精品免费| 青青草原综合久久大伊人精品| 久久综合999| 欧美日韩综合一区| 高清久久久久久| 99久久er热在这里只有精品15| 亚洲国产综合在线| 国产精品电影院| 久久综合久久综合亚洲| 欧美一区日本一区韩国一区| 91麻豆精品国产| 欧美二区在线观看| 日韩免费视频线观看| 日韩女优av电影| 欧美一二区视频| 久久久www免费人成精品| 日本一区二区视频在线观看| 国产日本亚洲高清| 亚洲色大成网站www久久九九| 亚洲女同女同女同女同女同69| 国产精品丝袜久久久久久app| 国产视频在线观看一区二区三区| 国产视频视频一区| 亚洲色图丝袜美腿| 日本美女一区二区三区视频| 国产在线一区二区综合免费视频| 国产日韩欧美综合一区| 国产偷国产偷亚洲高清人白洁| 天天综合色天天| 亚洲精品视频一区二区| 免费观看成人av| 欧美情侣在线播放| 亚洲国产综合91精品麻豆| 不卡av在线免费观看| 国产欧美日韩亚州综合 | 国模一区二区三区白浆| 91免费国产在线| 亚洲天堂成人网| 午夜亚洲福利老司机| 美女精品一区二区| 亚洲图片欧美色图| 成人午夜精品在线| 欧美刺激脚交jootjob| 日韩**一区毛片| 欧美日产在线观看| 亚洲一区二区五区| 色狠狠综合天天综合综合| 国产精品另类一区| 国产91精品露脸国语对白| 国产网红主播福利一区二区| 精品一区二区在线视频| 欧美精品一区二区三区蜜臀| 国产另类ts人妖一区二区| 久久精品免视看| 色噜噜狠狠一区二区三区果冻| 99精品国产99久久久久久白柏| 蜜乳av一区二区| 欧美成人一级视频| 大胆亚洲人体视频| 亚洲猫色日本管| 日韩午夜av一区| 国产91对白在线观看九色| 久久日韩粉嫩一区二区三区| 丁香五精品蜜臀久久久久99网站| 亚洲视频香蕉人妖| 56国语精品自产拍在线观看| 国产在线国偷精品产拍免费yy| 亚洲一区二区三区国产| 国产精品一品二品| 欧洲一区在线电影| 91美女蜜桃在线| 在线一区二区三区四区| 99麻豆久久久国产精品免费| 国产美女久久久久| 中文字幕在线视频一区| 日av在线不卡| 日韩精品视频网站| 日韩av在线发布| 免费xxxx性欧美18vr| 美女国产一区二区三区| 久久99精品久久久久婷婷| 午夜av一区二区| 久久精品国产精品亚洲红杏| 美女免费视频一区二区| 激情文学综合丁香| proumb性欧美在线观看| 色悠悠久久综合| 欧美日韩在线免费视频| 欧美日韩电影在线| 欧美精品一区二区三区高清aⅴ| 久久久精品影视| 自拍偷拍亚洲综合| 五月婷婷久久综合| 欧美日韩高清不卡| 亚洲激情在线播放| 日本女人一区二区三区| 国产高清精品网站| 91女神在线视频| 欧美成人精精品一区二区频| 国产精品乱码人人做人人爱| 亚洲mv大片欧洲mv大片精品| 国产一区在线观看视频| 色先锋资源久久综合| 精品福利一二区| 丝袜国产日韩另类美女| 99久久久久久|