`
liugang594
  • 浏览: 987601 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

给控件加装饰和输入提示一

阅读更多

在使用New Project Wizard的时候,可以看到在一些输入框左边有个小灯泡,把鼠标移到上面会有一些提示“Content assist Alt+/”;在框中使用 alt+/ 就是会出现一个提示。

 

Eclipse提供了一套对control的包装API,可以很简单的实现上述功能。如下:

 

增加decoration

		ControlDecoration decoration = new ControlDecoration(control,
				SWT.LEFT);
		decoration.setImage(decorationImage);
		decoration.setDescriptionText(decorationDescription);

 

Eclipse也提供了一些通用的decoration image和text,可以如下获取:

 

FieldDecoration fieldDecoration = FieldDecorationRegistry.getDefault()
				.getFieldDecoration(
						FieldDecorationRegistry.DEC_CONTENT_PROPOSAL);
		decorationDescription = fieldDecoration.getDescription() + "(. Alt+/)";
		decorationImage = fieldDecoration.getImage();

 

增加输入提示:

		char[] autoActivationCharacters = new char[] { '.' };
		KeyStroke keyStroke = null;
		try {
			keyStroke = KeyStroke.getInstance("Alt+/");
		} catch (ParseException e) {
			logError(e.getMessage(), e);
		}
		SimpleContentProposalProvider proposalProvider = new SimpleContentProposalProvider(
				proposalProviders);
		new ContentProposalAdapter(control, new TextContentAdapter(),
				proposalProvider, keyStroke, autoActivationCharacters);

 

这里的proposalProvider即在提示列表里出现在提示列。

 

这样就实现了一个简单的带提示标签和输入提示功能的控件。

 

分享到:
评论

相关推荐

    mfc控件学习

    它可以作为标签、提示信息或简单的装饰。通过修改CStatic的风格,可以实现不同类型的显示效果。 4. **CListBox** 控件:提供了一个列表供用户选择。可以是单选或多选,可以通过LB_ADDSTRING等函数添加项目,通过LB_...

    拖动Static控件

    静态控件不响应用户的输入事件,通常作为信息提示或界面装饰使用。然而,通过一些特殊技巧,我们可以使这些静态控件具有动态拖动的功能,让用户能够自由调整它们在窗口中的位置。`CRectTracker`是MFC库中用于处理...

    Silverlight基本控件介绍.doc

    WatermarkedTextBox是一个自定义控件,它扩展了TextBox,添加了一个水印文本功能,当文本框为空时显示提示信息,增加用户体验。 四、ToggleButton 控件 ToggleButton是一个可切换状态的按钮,它可以被选中或取消...

    Delphi控件与OUCL控件对照表.doc

    1. TDBGrid -> TBrowser:TDBGrid是Delphi中用于显示数据库数据的网格控件,而在OUCL中,对应的控件是TBrowser。两者都可以展示表格数据,但TBrowser可能更注重Unicode字符的支持。 2. TButton -> TButton:这是...

    silverlight 控件教程

    1. AutoCompleteBox:这个控件允许用户在文本框中输入文字,同时会基于输入内容动态显示下拉列表,帮助用户找到可能的匹配项。这对于快速搜索和数据输入非常有用。 2. Border:Border控件为其他控件添加边框和背景...

    前端小控件

    这些控件通常由CSS(层叠样式表)和Jquery(一个流行的JavaScript库)共同构建,为网站添加动态效果和美观的视觉表现。本压缩包包含了一系列的前端小控件源代码,解压后可以直接应用到你的项目中。 首先,`jquery-...

    WPF 控件.pdf

    - **定义**: `BulletDecorator` 是一种装饰器控件,用于在文本前添加项目符号。 - **用途**: 在列表项前面添加视觉标记。 #### Button - **定义**: `Button` 控件用于创建可点击的按钮。 - **示例**: 创建包含图像...

    flat_button3_demo.rar_DEMO_vc6 控件_vc6.0控件

    标题中的“flat_button3_demo.rar”表明这是一个关于扁平化按钮(Flat Button)的演示程序,而“DEMO_vc6 控件”和“vc6.0控件”的标签则提示我们,这个压缩包包含了一个使用Microsoft Visual C++ 6.0(简称VC6.0)...

    WinForms控件的装饰器,标志符号,行为和ControlDesigner

    装饰器(Adorners)是.NET Framework中的一个设计时工具,它允许开发者在设计时为控件添加视觉元素,如边框、指示符或提示信息,以提供更多的交互性。在Visual Studio中,这些装饰器通过`System.Windows.Forms....

    一个简单的颜色选择器控件

    标题中的“一个简单的颜色选择器控件”表明我们要讨论的是一个用于在用户界面中选取颜色的组件。这个控件可能是为了方便用户在网页或应用程序中选择颜色,常见于设计工具、网页编辑器或者任何需要用户指定颜色的地方...

    MFC外观装饰与设计

    MFC中,视图是显示数据和处理用户输入的部件,而框架窗口则包含视图和其他控件,负责管理整个窗口。通过重载视图类的OnDraw()函数,可以实现自定义的绘图逻辑,达到个性化界面效果。 2. 对话框(Dialog) 对话框...

    IP地址输入框vs2005

    6. **设计模式**:在设计这个自定义控件时,还可以考虑使用设计模式,如装饰者模式,将验证逻辑包装在另一个类中,这样可以保持控件的代码清晰,易于维护和扩展。 7. **UI交互**:除了验证,还可以考虑UI的友好性,...

    《新编Visual-Basic程序设计教程》第6章.pptx

    这一章的内容涵盖了文本控件、图形控件、按钮、直线和形状、复选框、单选按钮、列表框、组合框、框架、滚动条和计时器等,旨在帮助学习者深入理解和掌握这些控件的使用。 首先,我们关注的是文本控件。在VB中,文本...

    易语言源码易语言QQ空间装饰工具源码.rar

    2. **图形用户界面(GUI)设计**:QQ空间装饰工具通常需要一个用户友好的界面,易语言提供了丰富的控件库,如按钮、文本框、列表框等,用于构建GUI。源码中会包含这些控件的定义和事件处理函数,如点击事件、输入...

    WPF编程宝典 part1

    18.6.4 创建自定义装饰元素 497 18.7 小结 498 第Ⅴ部分 数据 第19章 数据绑定 501 19.1 使用自定义对象绑定到 数据库 501 19.1.1 构建数据访问组件 502 19.1.2 构建数据对象 504 19.1.3 显示绑定对象 505 19.1.4 ...

    Access数据库应用技术-教案-课题:任务2-使用设计视图创建窗体.docx

    控件是窗体或报表上的一个对象,用于输入或显示数据,或用来装饰窗体页面。控件可以设计窗体,并设计出满足不同需求的、个性化的窗体。在Access 2013中的控件都显示在“窗体设计工具”选项卡的“设计”选项卡的...

    C#登录界面

    C#中的Windows Forms是一个用于创建桌面应用的框架,它提供了丰富的控件库和事件驱动编程模型。在本项目中,我们可能会使用`Form`类来创建主窗口,作为登录界面的容器。 2. **控件使用**: - **TextBox**:用于...

    02-8.4 数据维护模块开发.pdf

    4. 装饰性的框架和直线控件:虽然不直接影响功能,但它们能提升窗体的视觉效果,使用户界面更加整洁和专业。 在窗体的编程中,关键事件包括命令按钮的单击事件和列表框的单击事件。例如,当用户点击“添加”按钮时...

    深入浅出C#(中文版 图文皆译)第六章.doc

    在不同Tab页上,根据聚会类型添加相应的控件,如NumericUpDown控件用于输入人数,CheckBox用于选择高级装饰,以及TextBox用于输入蛋糕上的文字。每个控件都需要绑定到对应的类属性和方法,例如`NumberOfPeople`属性...

Global site tag (gtag.js) - Google Analytics