Draw2d中有ScrollPane这样一个IFigure,它可以设置从不、一直、自动三种方式来现实滚动条,默认是自动。
实现步骤:
1、添加容器
panel = new Panel();
2、给容器添加布局(参照Draw2D布局,以便使用适合自己的布局)
3、在EditPart中将panel设置为ContentPanel
下面给出我的实现:
listboxFigure:
/*******************************************************************************
* Copyright (c) 2005-2011, Chinese Eclipse Community(CEC) All rights reserved.
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.ceclipse.org
*
* Contributors:
* Ming.He <heming@ceclipse.com> - initial API and implementation
*******************************************************************************/
package org.cec.design.graphic.figures;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.CompoundBorder;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.LineBorder;
import org.eclipse.draw2d.MarginBorder;
import org.eclipse.draw2d.Panel;
import org.eclipse.draw2d.ScrollPane;
import org.eclipse.draw2d.ToolbarLayout;
/**
* TODO 此处填写 class 信息
*
* @author Ming.He
* @date 2011-4-5
*/
public class ListboxFigure extends ScrollPane {
private Panel panel;
public ListboxFigure() {
setOpaque(true);
setBackgroundColor(ColorConstants.white);
ToolbarLayout layout = new ToolbarLayout();
layout.setMinorAlignment(ToolbarLayout.ALIGN_TOPLEFT);
layout.setStretchMinorAxis(false);
layout.setSpacing(2);
panel = new Panel();
panel.setBorder(new CompoundBorder(new LineBorder(), new MarginBorder(3)));
panel.setLayoutManager(layout);
setContents(panel);
}
public IFigure getContentFigure(){
return panel;
}
}
重写EditPart中实现getContentPane方法:
/* (non-Javadoc)
* @see org.eclipse.gef.editparts.AbstractGraphicalEditPart#getContentPane()
*/
//Override
public IFigure getContentPane() {
return ((ListboxFigure)getFigure()).getContentFigure();
}
分享到:
相关推荐
3. 添加滚动条组件并将其关联到视口。 4. 实现滚动条的事件监听,处理用户的滚动操作。 5. 调整布局以确保滚动条和视口的正确显示。 6. 测试和优化性能,确保滚动流畅且资源消耗合理。 通过阅读博文链接...
在界面上添加一个滚动条和一个文本框组件。 2. **定义回调函数**:在.m文件中,为滚动条的“ValueChangedFcn”属性定义一个回调函数。这个函数通常会包含以下内容: ```matlab function slider_Callback(hObject,...
1. **创建GUI界面**:使用`figure`函数打开一个新的图形窗口,然后使用`uicontrol`函数创建滚动条和文本框对象。滚动条通常用`uicontrol('Style', 'slider')`定义,而文本框则用`uicontrol('Style', 'text')`定义。 ...
在前端开发中,图片轮播或滚动条切换是一种常见的交互设计,用于展示多张图片或内容。本项目"js图片左右滚动条切换.zip"显然关注的是如何使用JavaScript、CSS、HTML5以及jQuery来实现这样的功能。下面将详细介绍这些...
对于图片滚动条,可能需要设置`overflow`属性为`auto`或`scroll`来显示滚动条,同时可以通过`::-webkit-scrollbar`伪元素来自定义滚动条的样式。 - **定位与布局**:可以使用`position`(如`relative`、`absolute`...
为了使用`ScrollPlot`,你需要先加载这个函数(如果不在工作路径中,需要添加到路径),然后在你的MATLAB代码中创建一个绘图对象,例如一个`figure`或`subplot`,接着你可以调用`ScrollPlot`函数,传递绘图句柄和新...
例如,我们可以用`$(window).scrollTop()`获取当前滚动条的位置,然后根据这个位置判断是否应该启动图片的放大效果。此外,jQuery的`.animate()`方法可以用来创建自定义动画,实现图片大小的平滑变化。 HTML5在这里...
首先,MATLAB的图形用户界面是通过创建各种图形对象,如按钮、文本框、滚动条等来实现的。在这个场景下,我们关注的是如何展示长文本。`helpfig.m`文件很可能是实现这一功能的核心代码,它可能包含了创建图形窗口和...
例如,`createFcn`可能是创建轻量级句柄图形对象的回调,`scrollEvent`可能用于处理滚动条的移动事件。 2. **license.txt**:这是一个标准的许可文件,通常包含软件的授权信息和使用条款。在MATLAB开发的上下文中,...
此外,`magnify.m`还可以通过修改源代码进行个性化定制,比如改变放大倍数、设置背景颜色、添加滚动条等功能。这对于高级用户来说提供了更多的可能性。 总结起来,`magnify.m`是MATLAB中一个非常实用的图像查看工具...
通过绑定事件处理器,你可以实现用户与图表的交互,如点击图表上的点获取其坐标,或者通过滑动条改变图表数据。 7. **实时更新图表**:在GUI应用程序中,你可能需要动态更新图表。这可以通过重新绘制图表或者修改...
如果文本内容过多,UIEDIT控件会自动显示垂直滚动条,让用户能够浏览所有内容。滚动条的行为可以通过设置`Scrollable`属性来调整。 7. **编程接口** MATLAB提供了一套完整的编程接口来操作UIEDIT控件,包括读取和...
至于滚动条颜色的改变,可以在部分插入CSS代码来定制,通过调整滚动条的各种伪元素样式来实现个性化设计。 总体来说,这份HTML5学习笔记涵盖了网站开发的基础知识,是初学者了解和掌握前端开发的良好参考资料。无论...
3. **创建图形**:使用Matplotlib的`figure()`函数创建一个新的图形,并通过`add_subplot()`添加子图。 4. **绘制曲线**:使用`plot()`函数绘制曲线,每个国家或地区的数据可能用不同颜色表示,随着时间轴的滚动,...
在这个函数中,我们创建一个figure对象,并添加一个子图`ax1`。然后,我们用蓝色绘制原始数据`y`,用天蓝色绘制一条与x轴平行的线`line_y`,以及一条与y轴平行的线`line_x`,这两条线将用于标注当前鼠标位置的值。 ...
这个项目的核心在于利用jQuery的事件监听和DOM操作功能,结合CSS样式设计出具有水平拖动条的图片滚动效果,下面将详细解析其关键知识点。 1. **jQuery库**:jQuery是JavaScript的一个轻量级库,简化了DOM操作、事件...
1. **组件(Component)**:GUI由各种组件构成,如按钮(Button)、文本框(Text Box)、滚动条(Scrollbar)、列表框(List Box)、弹出菜单(PopupMenu)等。这些组件都是用户可以与之交互的对象。 2. **事件(Event...
- **滚动条样式**:通过伪元素`::-webkit-scrollbar`、`::-webkit-scrollbar-track`、`::-webkit-scrollbar-thumb`等自定义滚动条的样式。 这些样式类不仅提高了页面布局的灵活性,还增强了用户体验。 #### 结论 ...
Matlab GUI由多个组件构成,包括按钮(Buttons)、文本框(Text)、编辑框(Edit)、滚动条(Scrollbar)、列表框(Listbox)等。这些组件通过回调函数(Callback)相互连接,实现用户的输入与程序的响应。在创建GUI...
- **Min-width属性**:当元素宽度设置为100%时,可能导致页面在缩小窗口时出现横向滚动条。为了避免这种情况,可以使用`min-width`属性限制页面最小宽度,保持内容的完整性。 #### 四、HTML5新标签的应用 - **...