精华内容
下载资源
问答
  • 根据鼠标状态设置动态变化的按钮【实例介绍】本实例使用按钮创建导航功能。当鼠标移到按钮上时,按钮的颜色和字 体发生变化;...(3) 在窗体中添加Button控件,设置Button控件的属性,Image属性为按钮显示的图 ...

    根据鼠标状态设置动态变化的按钮

    001d32e11b858261947b975d49245ee5.png

    【实例介绍】本实例使用按钮创建导航功能。当鼠标移到按钮上时,按钮的颜色和字 体发生变化;当鼠标离开时,恢复原状,实现动态变化的效果。

    【开发过程】

    (1) 创建一个Windows应用程序,项目名称为Ex030,窗体默认为Forml。

    (2) 在窗体中添加Panel控件,用于分组。

    (3) 在窗体中添加Button控件,设置Button控件的属性,Image属性为按钮显示的图 片, TextlmageRelation 属性值为 ImageBefbreText。

    (1) 在每一个按钮的MouseMove事件中编写代码如下:

    01 private void buttonl_MouseMove(object sender, MouseEventArgs e)

    02 (

    03 this.buttonl.Font = new Font(this.Font,Fontstyle.Italic);

    //设置按钮的字体

    04 }

    (2) 在每一个按钮的MouseLeave事件中编写代码如下:

    01 private void buttonl MouseLeave(object sender, EventArgs e)

    02 (

    03 this . buttonl. Font = new Font (H宋体, 9); 〃设置按 钮的字体

    04 }

    【关键技术解析】

    设置Button控件的动态效果时,可以使用的方法很多,本实例使用改变字体的方式实 现。在控件的MouseMove事件和MouseLeave事件中编写不同字体效果,即可实现。

    【拓展应用】

    □可实现动态变化的界面效果。

    □可实现使用图片代替控件创建相应的界面。

    展开全文
  • Flutter 1.22版本新增了3个...因为想要将以前的按钮调整为统一外观比较麻烦,因此以前经常使用自定义的按钮,而新增的按钮解决了此类问题,可以非常方便的设置整体外观。 样式对比: 外观上并没有很大不同,...

    aa1581fe26f2d9f9e664b3f890072d15.png

    Flutter 1.22版本新增了3个按钮,TextButton、OutlinedButton、ElevatedButton,虽然以前的Button没有被废弃,但还是建议使用新的Button

    为什么会新增 Button?因为想要将以前的按钮调整为统一的外观比较麻烦,因此以前经常使用自定义的按钮,而新增的按钮解决了此类问题,可以非常方便的设置整体外观。

    样式对比:

    cbce7575c8488ae85fc93823818579be.png

    外观上并没有很大的不同,但TextButton、OutlinedButton、ElevatedButton 将外观属性集合为一个 ButtonStyle,非常方便统一控制。

    TextButton、OutlinedButton、ElevatedButton 这3个按钮的用法和属性完全相同,下面以 TextButton 为例。

    简单使用:

    TextButton(
      child: Text('TextButton'),
    )

    cc99546b3fd546c846310cbbd923cf6a.png

    onPressed 不设置或者设置为 null 时,按钮为不可用状态。

    TextButton(
      child: Text('TextButton'),
      onPressed: (){},
    )

    14a2a70a94f68c0edcd55397bcf2ffef.png

    onPressed 为点击回调,onLongPress 为长按回调。

    下面是最重要的属性 ButtonStyle,一切外观都是通过这个属性进行控制,属性如下:

    const ButtonStyle({
      this.textStyle, //字体
      this.backgroundColor, //背景色
      this.foregroundColor, //前景色
      this.overlayColor, // 高亮色,按钮处于focused, hovered, or pressed时的颜色
      this.shadowColor, // 阴影颜色
      this.elevation, // 阴影值
      this.padding, // padding
      this.minimumSize, //最小尺寸
      this.side, //边框
      this.shape, //形状
      this.mouseCursor, //鼠标指针的光标进入或悬停在此按钮的[InkWell]上时。
      this.visualDensity, // 按钮布局的紧凑程度
      this.tapTargetSize, // 响应触摸的区域
      this.animationDuration, //[shape]和[elevation]的动画更改的持续时间。
      this.enableFeedback, // 检测到的手势是否应提供声音和/或触觉反馈。例如,在Android上,点击会产生咔哒声,启用反馈后,长按会产生短暂的振动。通常,组件默认值为true。
    });

    这些属性的用法也和以前的不一样,比如 textStyle 并不是直接设置 TextStyle,下面设置字体:

    TextButton(
      child: Text('TextButton'),
      onPressed: () {},
      style: ButtonStyle(
        textStyle: MaterialStateProperty.all(TextStyle(fontSize: 20)),
      ),
    )

    2a950b828feb75e7eb11bf01047cde80.png

    注意:字体颜色的设置不通过textStyle 设置,而是通过 foregroundColor

    TextButton(
      child: Text('TextButton'),
      onPressed: () {},
      style: ButtonStyle(
        foregroundColor: MaterialStateProperty.all(Colors.red),
      ),
    )

    339e32b7f3637a090842771d79756bdf.png

    根据按钮的状态改变字体颜色:

    TextButton(
                        child: Text('TextButton'),
                        onPressed: () {},
                        style: ButtonStyle(
                          foregroundColor:
                              MaterialStateProperty.resolveWith((states) {
                            return states.contains(MaterialState.pressed)
                                ? Colors.blue
                                : Colors.red;
                          }),
                        ),
                      )

    45e5193bb1eb331ce818475b6f5e9705.png

    其他属性用法和上面类似,不在一一介绍。

    进行全局控制:

    MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        textButtonTheme: TextButtonThemeData(
          style: ButtonStyle()
        ),
        elevatedButtonTheme: ElevatedButtonThemeData(
            style: ButtonStyle()
        ),
        outlinedButtonTheme: OutlinedButtonThemeData(
            style: ButtonStyle()
        )
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    )

    ButtonStyle 内的属性配置和单个按钮的用法是一致的。

    通过上面的介绍,建议使用 TextButton、OutlinedButton、ElevatedButton 替换 FlatButton、OutlineButton、RaisedButton

    交流

    老孟Flutter博客(330个控件用法+实战入门系列文章):http://laomengit.com

    欢迎加入Flutter交流群(微信:laomengit)、关注公众号【老孟Flutter】

    展开全文
  • 按钮,是我们开发中最常用的部件之一,在Flutter中也提供了丰富的按钮部件。...按钮的大小将扩展以适合子窗口小部件。其onPressed处理函数为nu...

    按钮,是我们开发中最常用的部件之一,在Flutter中也提供了丰富的按钮部件。

    MaterialButton

    • RaisedButton

    • OutlineButton

    • FlatButton

    • IconButton

    MaterialButton,依赖于widget tree中最近的ButtonTheme和Theme的Material按钮。

    按钮的大小将扩展以适合子窗口小部件。

    其onPressed处理函数为null的MaterialButtons将被禁用。要启用按钮,请确保为onPressed传递非null值。

    官方建议考虑使用FlatButton,OutlineButton或RaisedButton,它们会使用与material设计规范相匹配的适当默认值来配置按钮。

    如果不继承主题默认值,直接创建按钮,请使用RawMaterialButton。

    如果希望保持涟漪效果,但又不想使用按钮,请直接使用InkWell。

    ======================================================

    MaterialButton

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: MaterialButton(          onPressed: () {},          child: Text(            '我是MaterialButton',          ),        ),      ),    );  }}

    e5ccfba536dd9cb2f999bb25ebd8e625.png4f6e6e2c9fbed6df0cb5c4b3999271fc.png

    我们可以看到由于没有配置按钮颜色大小等信息,所以所有的配置都是默认的,点击之后会有涟漪效果。如果onPressed: 属性不设置,那么按钮被禁用。因为button的配置都差不多,所以关于主题颜色配置,我们后面一起研究。

    RaisedButton

    RaisedButton是material设计规范中的“凸起按钮”。material设计规范中建议,凸起按钮应该添加在平面布局中,避免在已升高的内容(例如对话框或卡片)上使用凸起的按钮。默认带有阴影和灰色背景。按下后,阴影会变大

    同样,onPressed回调为null,则该按钮将被禁用,并且默认情况下将类似于DisabledColor中的平面按钮。如果尝试更改按钮的颜色并且没有任何效果,请检查是否传递了非null的onPressed函数。

    凸起的按钮的最小尺寸为88.0 x 36.0,可以用ButtonTheme覆盖。

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: RaisedButton(          onPressed: () {},          child: Text(            '我是RaisedButton',          ),        ),      ),    );  }}

    bbf9f86768a52b8406f81f715317ad21.png634e6e56b2c3e6e0ab17aedda1108ee7.png

    FlatButton

    FlatButton是material设计规范中的的“扁平按钮”。平面按钮没有可见的边框,默认背景透明并不带阴影。按下后,会有背景色。

    同样的,onPressed回调为null,则该按钮将被禁用,不会对触摸产生反应,并且将按照disabledColor属性而不是color属性指定的颜色进行着色。如果您尝试更改按钮的颜色并且没有任何效果,请检查是否传递了非null的onPressed处理函数。

    平面按钮的最小尺寸为88.0 x 36.0,可以用ButtonTheme覆盖。

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: FlatButton(          onPressed: () {},          child: Text(            '我是FlatButton',          ),        ),      ),    );  }}

    afd673ed5cb7de7f2f401a5005725f9b.png2b3e6878e3e01fedb2fb7506637d0e6a.png

    OutlineButton

    介于RaisedButton和FlatButton的特性之间:带边框的按钮,不带阴影且背景透明。按下后,边框颜色会变亮、同时出现背景和阴影。轮廓按钮的边框由形状定义,外观由borderSide,disabledBorderColor和highlightedBorderColor定义。

    同样,onPressed回调为null,则该按钮将被禁用,并且默认情况下将类似于DisabledColor中的平面按钮。

    按钮的最小大小为88.0 x 36.0,可以用ButtonTheme覆盖。

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: OutlineButton(          onPressed: () {},          child: Text(            '我是OutlineButton',          ),        ),      ),    );  }}

    88a7a570cbcfea011f1b4856f58459fa.png0bd9fb9e8aefb7fbfd2a6932b0886d3d.png

    IconButton

    material设计中的图标按钮。要求父节点中之一是material widget。图标按钮通常在AppBar.actions字段中使用,但也不限于此。

    同样,onPressed回调为null,则该按钮将被禁用,并且不会对触摸做出反应。无论实际的iconSize大小如何,图标按钮的点击区域都将至少为48.0像素大小,以满足material设计规范中对触摸目标尺寸的要求。 

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: IconButton(          onPressed: () {},          icon: Icon(Icons.adb),        ),      ),    );  }}

    a208aaf3a0f3b40923f5c495b18afa89.pngc9eeb8fba403692d1769b7d62f4aed32.png

    此外,RaisedButton、OutlineButton、FlatButton都为我们提供了icon的构造函数。类似这样的效果。

    class ButtonPage extends StatelessWidget {  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: RaisedButton.icon(          onPressed: () {},          icon: Icon(Icons.accessible),          label: Text('我是带icon的RaisedButton'),        ),      ),    );  }}

    19219c04c5f488abb9167ff819a203d5.png95eeac736a46dc4b378f9121c4964876.png

    外观参数说明

      const RaisedButton({    Key key,    @required VoidCallback onPressed,// 点击事件,如果null,按钮禁用    ButtonTextTheme textTheme,// button 的主题设置    Color textColor,// 文字颜色    Color disabledTextColor,// 禁用态颜色    Color color,// 填充颜色    Color disabledColor,// 禁用颜色    Color focusColor,// 焦点颜色    Color hoverColor,// 悬浮颜色    Color highlightColor,// 高亮    Color splashColor,// 涟漪颜色    double elevation,// 阴影部分    double focusElevation,    double hoverElevation,    double highlightElevation,    double disabledElevation,    EdgeInsetsGeometry padding,// padding填充    ShapeBorder shape,// 外形    Widget child,  })

    按钮的自定义属性,相信大部分属性大家都知道怎么使用,这里不在赘述了。但是有一点需要注意,ButtonTextTheme这个属性,由于这个地方的属性容易相互覆盖,其中的关系会在后面theme主题系列文章中详细阐。

    总结:flutter中button的基本用法和属性就先介绍到这里,接下来的文章会继续将常用Widget逐一介绍,在最后的系列中,会公开一个商业级的项目,感兴趣的小伙伴关注。如果您在阅读过程中发现错误,请及时留言给我,我会第一时间改正,争取不误导他人。感谢支持!

    展开全文
  • Button(中文翻译按钮),这是交互控件中一种,常用实际应用场景请求数据提交,点击事件数据处理。在Flutter中Material 组件库常用RaiseButton、 FloatingActionButton 、FlatButton、OutlineButton 、自定义按钮。...

    Button(中文翻译按钮),这是交互控件中的一种,常用实际应用场景请求数据提交,点击事件数据处理。在Flutter中Material 组件库常用RaiseButton、 FloatingActionButton 、FlatButton、OutlineButton 、自定义按钮。不同按钮有着不同风格,适用各种实际场景。

    1 RaisedButton "凸起"按钮,支持悬浮和正常。onPressed和onLongPress回调为null,则该按钮将被禁用

    textColor:设置文字颜色

    disabledTextColor:设置按钮禁用时文字颜色

    color:设置按钮背景颜色

    disabledColor:设置按钮禁用时背景颜色

    highlightColor:设置点击时按钮颜色

    colorBrightness:文字亮度

    highlightElevation:点击时阴影面积

    disabledElevation:按钮禁用时阴影面积

    padding:设定按钮文字与边框距离

    shape:按钮形状设置

    c1a57cdfce272caab6919ecde290880e.png

    按钮形状

    2 FlatButton扁平按钮,默认背景透明并不带阴影,通过color设置为背景增加颜色。属性跟RaiseButton一样。

    3 OutlineButton 带边框按钮。属性跟RaiseButton一样

    92de5d421d2b37726b1b89fa8faed74a.png

    边框按钮

    4 IconButton 带图标按钮,icon 要指定图标。点击时会背景颜色。其他属性跟RaiseButton一样。

    6651f32053620d0b50b2157cb0ae7d29.png

    IconButton

    5 RaisedButton调用icon函数指定可以指定图标和按钮文字

    9fe3bac9bb1c0ab8a4f4592b1d1868eb.png

    RaisedButton

    6自定义按钮。更改按钮属性改变按钮

    2ddf17dcc6294c030b5d8b5af1a39231.png

    自定义按钮

    上一讲 8-Flutter控件Text剖析
    下一讲(待续) 10-Flutter控件图片解析

    觉得button与原生有什么区别,欢迎关注点赞留言转发

    展开全文
  • 描述qml按钮显示一个用户可以按下或单击的按钮控件。按钮通常用于执行操作或回答问题。典型的按钮有OK、Apply、Cancel、Close、Yes、No和Help。Button从AbstractButton继承其API。...连接到这个信号来执行按钮的操作...
  • button按钮属性其中,transition 属性有一下集中模式None : 无COLOR: 颜色变换SPRITE: 精灵贴图变换SCALE: 大小变换其中:①. 颜色变换 和 贴图变换类似 都有 按下 悬停 禁用 状态,只不过一个变换颜色一个变换贴图...
  • 先来看一下官网API:http://developer.egret.com/cn/apidoc/index/name/eui.Button看过之后你会发现里面好像...先来说一下Lable:要在按钮上显示文本我们在exml里面创建的按钮:主要注意一下标红位置。https:/...
  • 在网页中用户交互过程中,按钮是必不可少的重要组件之一,关羽它的设计与实现,我们在网页标签中定义为< button type="button">...标签中特有的属性含义。按钮(button)一共有四种分类:1.重置按钮 2.提交按钮 ...
  • 大家好,我们今日继续讲解VBA代码解决方案的第98讲内容:高亮显示按钮。...为了达到当鼠标掠过按钮控件时以高亮和凸起显示按钮的效果,可以在窗体和按钮的MouseMove事件中进行模拟。什么是MouseMove事件呢?Mouse...
  • 希望告知不用贴图方法。
  • Python中Button按钮组件常用的属性及参数设置 本篇文章中小编给大家介绍Button按钮组件的相关常用的属性以及参数的设置。 1. 常用属性使用语法 变量=Button(父容器(根窗口),参数=参数值) 2. 常用参数说明 [ ]...
  • UIButton * button;  /** 想让 导航栏的左按钮向左偏一点的方法 */  button.contentEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);... /** 想让按钮的全部内容正好被包裹住 */  [button sizeToFit];  
  • // 设置Button边界 } if (e.getSource() == cancelButton) {// 取消 changeButton.setBounds(150, 104, 100, 22); topJSpinner.setValue(0); leftJSpinner.setValue(0); rightJSpinner.setValue(0); ...
  • 1.当button按钮我们未设置background的属性的时候,button按钮默认点击的时候显示灰色。 2.当我们为button按钮设置background属性之后,button点击的效果失效。(,如果是白背景,一直是白色) 3.解决方法:在res下...
  • btn.frame = CGRectMake(x, y, width, height);...//设置按钮自体大小//[btn setFont: [UIFont systemFontSize: 14.0]]; //这种可以用来设置字体大小,但是可能会在将来SDK版本中去除改方
  • Java 关于Button的一些属性设置和思考

    千次阅读 2018-08-30 19:40:48
    这是我曾经编写一个按钮,功能就是实现两个文本域中数字算术和。这里面有几个常用方法可以学习一下。 1.基本方法 getText() 使用方法:按钮名.getText(); 作用:得到按钮字符串信息。 setBounds...
  • html:button按钮背景图片设置

    千次阅读 2019-10-12 11:56:37
    W3c没有给出button背景图片的属性标准。但我们可以通过background-size:350px 100px;这两个值来控制背景图片【也可以用像素百分比%来控制】,然后通过background-color: transparent;设置背景色为透明,即可达到给...
  • 一.TextView ...通过onClick属性来监听按钮的点击 (2)方式二: 通过按钮的setOnClickListener()方法注册一个监听事件,在监听事件当中创建出OnClickListener() 然后自动重写onClick()...
  • 最为最基本控件,我们必须对button的每个常用属性都熟练应用;1,使用之前,必须对按钮进行定义,为乐规范,在@interface ViewController (){}中进行定义,先定义后使用。UIButton *_button1; 在实际项目开发中,...
  • 设置button按钮长度:在相应wxml文件button标签中设置属性type=“button” style=“width:××px;” 设置button按钮框中字上下居中:在对应wxss文件中设置height: ××; line-height: ××;即可 ...
  • Vue设置button的disable属性

    万次阅读 2019-05-24 13:30:00
    表单元素有一个disable属性,用来控制该... 经实测,disable接受任何属性值,甚至只要你给标签添加了disable的属性,这个表单元素就成为不可用状态。  换句话说,如果你试图用下面的语句,让按钮成为可用状态,...
  • Python允许用户配置按钮的按我们的要求。各种选项可以被设置或重置的要求。我们还可以将方法或功能的按钮,当按钮被按压。按钮小工具的使用语法如下:语法W=Button(parent,options)可能选项的列表如下。Sn选项描述1...
  • 如果在窗体上放置一个文本输入框,放置一个按钮,并将按钮default属性设置为True,那么在文本输入框获是焦点时输入Enter键,回车,自动相当于点击按钮。一个窗口只能有一个默认按钮。 这样按回车就不会结束进程了。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,371
精华内容 948
关键字:

button按钮的属性设置