layout:decorator不生效(深入浅出JScrollPane)

2026-09-15 09:15:01 :0

layout:decorator不生效(深入浅出JScrollPane)

“layout:decorator不生效”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看layout:decorator不生效(深入浅出JScrollPane)!

本文目录

深入浅出JScrollPane

当显示区域受限时,滚动窗格,即JScrollPane,就有了用武之地,用来显示尺寸较大或者尺寸可以的动态变化的控件。

透过滚动窗格看东西,就像隔窗看花,只能看到一尺见方的天地,想要看到更多,就得左右移动,改变角度。

滚动窗格是Decorator模式的实例,能够动态地给控件添加滚动特性。一个典型的例子就是文本区(JTextArea)没有滚动条,如果需要的话,可以将文本区插入到滚动窗格。

如图,滚动窗格由观察窗口(JViewport)和水平、垂直的滚动条(JScrollBar)等构成。JViewport给数据源提供了一个观察的窗口,数据源可以是JTextArea,也可以是其他类型的控件。当数据源的内容超出了JViewport显示范围时,滚动条会自动出现。

JViewport可视区域的大小由两方面因素决定。一是,若数据源实现了Scrollable接口,则可视区域的大小依据 getPreferredScrollableViewportSize() 方法的返回值。二是,若数据源是普通的控件,则可视区域的大小依据 getPreferredSize() 方法的返回值。需要注意的是,后者因为JViewport的默认大小足以显示数据源的所有内容,所以不会出现滚动条。

滚动条允许用户调整可视区域显示的内容。下图描述了滚动条的三个部分:滚动条(knob),按钮(button),以及空白区(track):

当用户左右移动滚动条时,可视区域相应地左右变化;当用户单击按钮时,可视区域滚动一个单位距离;当用户点击空白区时,可视区域滚动一个距离块。一个单位距离具体有多少,或参考 getScrollableUnitIncrement() 方法,或由 JScrollPane.getHorizontalScrollBar().setUnitIncrement() 方法设定。除此之外,用户还可以设置滚动条的显示方式。

下面用一个具体的例子演示滚动窗格的用法:

第三方布局管理器—— DesignGridLayout 派生于Canonical Grids理念,致力于构建平衡、漂亮的UI。默认情况下,DesignGridLayout不允许 非滚动 的JButton控件扩展到下一行,只能以 PreferredSize (下图BUTTON A大小)显示。在这种情况下, new JScrollPane(new JButton("B")) 语句就像是游戏中的技能包,赋予JButton新的滚动特性,从而满足了DesignGridLayout的扩展要求,成功让BUTTON B占据两行。效果图如下:

本文讨论了滚动窗格,分析了它的原理,并用一个详细的示例演示了滚动窗格的用法。

form设置的数据怎么添加到table

页面代码:

跳转表单的代码:
《Tooltip title=""》
    《a onClick={this.showEditForm.bind(this,text)}》《Icon type="edit"  style={{ fontSize: 18 }} /》《/a》
《/Tooltip》
showEditForm=(text) =》{
        const data_save = this.props.signal.data_save.data
        const data_form = 
        for (let j=0; j《data_save.length; j++) {
            for (let i=0; i《data_save.signal.length; i++) {
                if(data_save.variety == text.variety){
                    this.setState({
                        okText: ’保存’,
                        modalVisible:true,
                        isCreate:false,
                        formTitle: ’交易信号’+’ ’+text.variety,
                        currentEditId:text.variety,
                        data_form: 
                            data_form.valueOf(
                                data_form.push({
                                    time:data_save,
                                    signal:data_save
                                })
                            ),
                    })
                    /*console.log("data_form", data_form)*/
                    this.form.setFieldsValue({
                        ...data_form
                    });
                }
            }
            
        }
    }

表单代码:

import React from ’react’
import PropTypes from ’prop-types’
import { Table, Form, Card, Tooltip, Input, InputNumber, Radio, Modal,Select, Icon, Button, TimePicker } from ’antd’;
import currencies from ’../../common/currencies.js’;
const FormItem = Form.Item
const format = ’HH:mm’;
const AddSignal =(props) =》 {
  console.log("form",props)
  this.state ={
    data: props.data,
    loading: false,
  }
  console.log("state", this.state)
  const handleSubmit = (e) =》 {
    e.preventDefault();
    form.validateFields((err, values) =》{
      if(!err) {
          this.state.data.valueOf(this.state.data.push(values))
          console.log(’form1’, values, this.state.data)
      }
    })
  }
  const {visible, onCancel, onCreateOrSave, form, title, okText, initValues} = props;
  const { getFieldDecorator } = form;
  const clumn = [
  {
    title: ’时间’,
    dataIndex: ’time’,
    width: 100,
    editable: true,
  },
  {
    title: ’信号’,
    dataIndex: ’signal’,
    width: 120,
    editable: true,
  },
  {
    title: ’操作’,
    dataIndex: ’action’,
    width: 30,
    render: (text, record, index) =》 (
      《span》
        《Tooltip title="删除"》
          《a style={{color:"red"}}》
              《Icon style={{ fontSize: 16}} type="delete" /》
          《/a》
        《/Tooltip》
      《/span》
    ),
  }]
  return (
    《Modal
      visible={visible}
      title={title}
      okText={okText}
      onCancel={onCancel}
      onOk={onCreateOrSave}》
        《Form layout="inline" onSubmit={handleSubmit}》
          《FormItem》
            {getFieldDecorator(’time’,{})(
            /*《TimePicker format={format} /》*/《Input /》
            )}
          《/FormItem》
          《FormItem》
            {getFieldDecorator(’signal’,{})(
              《Select placeholder="请选择信号" style={{ width: 160}} 》
                《Select.Option value=" 《/Select.Option》
              《Select.Option value=" 《/Select.Option》
              《Select.Option value=" 《/Select.Option》
              《/Select》
            )}
          《/FormItem》
          《FormItem》《Button htmlType="submit" type="primary"》新增《/Button》《/FormItem》
        《/Form》
        《Table rowKey=’time’ columns={clumn} dataSource={this.state.data} pagination={false} size="small" scroll={{y: 350}} /》
    《/Modal》
  )
}
export default Form.create()(AddSignal)

关于layout:decorator不生效,深入浅出JScrollPane的介绍到此结束,希望对大家有所帮助。

layout:decorator不生效(深入浅出JScrollPane)

本文编辑:admin

更多文章:


16进制转10进制 python(有符号十六进制转换为十进制 怎么转换啊)

16进制转10进制 python(有符号十六进制转换为十进制 怎么转换啊)

“16进制转10进制 python”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看16进制转10进制 python(有符号十六进制转换为十进制 怎么转换啊)!本文目录有符号十六进制转换为十进制 怎么转换啊python 有符号

2025年9月13日 11:00

爬虫软件能采集些什么信息(网络爬虫的数据采集方法有哪些)

爬虫软件能采集些什么信息(网络爬虫的数据采集方法有哪些)

大家好,关于爬虫软件能采集些什么信息很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于网络爬虫的数据采集方法有哪些的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2025年8月11日 13:15

广数980手机编程软件(哪里能找到广数980TD系统程序传输软件(非串口))

广数980手机编程软件(哪里能找到广数980TD系统程序传输软件(非串口))

本篇文章给大家谈谈广数980手机编程软件,以及哪里能找到广数980TD系统程序传输软件(非串口)对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录哪里能找到广数980TD系统程序传输软件(非串口)广数980tc2_A工件怎么编程

2025年7月27日 21:15

client造句(个人的英语怎么读personal)

client造句(个人的英语怎么读personal)

其实client造句的问题并不复杂,但是又很多的朋友都不太了解个人的英语怎么读personal,因此呢,今天小编就来为大家分享client造句的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录个人的英语怎么读per

2025年12月1日 11:15

学会js和mysql能做什么(学完mysql之后做个什么项目好呢)

学会js和mysql能做什么(学完mysql之后做个什么项目好呢)

大家好,关于学会js和mysql能做什么很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于学完mysql之后做个什么项目好呢的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位

2026年7月23日 00:30

web服务器配置个人总结(Windows 的Web服务器配置方法介绍)

web服务器配置个人总结(Windows 的Web服务器配置方法介绍)

这篇文章给大家聊聊关于web服务器配置个人总结,以及Windows 的Web服务器配置方法介绍对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录Windows 的Web服务器配置方法介绍LINUX下DNS 、FTP、 web服务

2025年6月13日 11:15

微信表单制作平台(如何用MAKA做一个漂亮的微信H5)

微信表单制作平台(如何用MAKA做一个漂亮的微信H5)

各位老铁们,大家好,今天由我来为大家分享微信表单制作平台,以及如何用MAKA做一个漂亮的微信H5的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录如何

2025年9月1日 16:00

免费word个人简历(如何利用word制作个人简历)

免费word个人简历(如何利用word制作个人简历)

这篇文章给大家聊聊关于免费word个人简历,以及如何利用word制作个人简历对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录如何利用word制作个人简历怎么用word制作个人简历怎么用word做简历如何利用word制作个人简历

2026年4月23日 00:15

世界杯魔咒卫冕冠军小组赛出局(世界杯有那些魔咒)

世界杯魔咒卫冕冠军小组赛出局(世界杯有那些魔咒)

大家好,如果您还对世界杯魔咒卫冕冠军小组赛出局不太了解,没有关系,今天就由本站为大家分享世界杯魔咒卫冕冠军小组赛出局的知识,包括世界杯有那些魔咒的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录世界杯有那些魔咒202

2026年3月22日 12:45

python导入自定义模块(python怎么自定义模块)

python导入自定义模块(python怎么自定义模块)

大家好,python导入自定义模块相信很多的网友都不是很明白,包括python怎么自定义模块也是一样,不过没有关系,接下来就来为大家分享关于python导入自定义模块和python怎么自定义模块的一些知识点,大家可以关注收藏,免得下次来找不

2026年4月11日 19:00

arbitrary名词(名词解释:人的独立性与群体性)

arbitrary名词(名词解释:人的独立性与群体性)

各位老铁们好,相信很多人对arbitrary名词都不是特别的了解,因此呢,今天就来为大家分享下关于arbitrary名词以及名词解释:人的独立性与群体性的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录名词解释:人

2026年7月30日 20:15

back down(back off与back up 与back down的区别)

back down(back off与back up 与back down的区别)

各位老铁们,大家好,今天由我来为大家分享back down,以及back off与back up 与back down的区别的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,

2026年3月1日 01:30

powerful binoculars(英语作文《journey to the sea》)

powerful binoculars(英语作文《journey to the sea》)

“powerful binoculars”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看powerful binoculars(英语作文《journey to the sea》)!本文目录英语作文《journey to th

2026年1月22日 14:00

js效果多的网站(网页JS效果)

js效果多的网站(网页JS效果)

大家好,如果您还对js效果多的网站不太了解,没有关系,今天就由本站为大家分享js效果多的网站的知识,包括网页JS效果的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录网页JS效果哪里js效果最全求助,我电脑卓越亚马逊

2025年6月11日 14:30

template意思(template <class T>到底是什么意思啊求解.)

template意思(template <class T>到底是什么意思啊求解.)

各位老铁们,大家好,今天由我来为大家分享template意思,以及template 到底是什么意思啊求解.的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本

2026年3月16日 18:45

prompt action(i appreciate your prompt action中文什么意思)

prompt action(i appreciate your prompt action中文什么意思)

这篇文章给大家聊聊关于prompt action,以及i appreciate your prompt action中文什么意思对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录i appreciate your prompt

2025年7月22日 19:30

indexof功能怎么用(vb要实现indexof 功能该怎么做)

indexof功能怎么用(vb要实现indexof 功能该怎么做)

各位老铁们,大家好,今天由我来为大家分享indexof功能怎么用,以及vb要实现indexof 功能该怎么做的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

2025年11月14日 16:30

refresh英文翻译(refresh和refurbish的区别是什么)

refresh英文翻译(refresh和refurbish的区别是什么)

这篇文章给大家聊聊关于refresh英文翻译,以及refresh和refurbish的区别是什么对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录refresh和refurbish的区别是什么“刷屏“翻译成英文是什么词英语Ref

2025年12月3日 14:00

conventional的名词形式(“烟花爆竹”英语怎么说)

conventional的名词形式(“烟花爆竹”英语怎么说)

本篇文章给大家谈谈conventional的名词形式,以及“烟花爆竹”英语怎么说对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录“烟花爆竹”

2026年4月6日 13:00

phpcmsx源码(在phpcms做的网站中,直接修改源代码,不在后台进行,过段时间,代码为什么会被自动改回来)

phpcmsx源码(在phpcms做的网站中,直接修改源代码,不在后台进行,过段时间,代码为什么会被自动改回来)

这篇文章给大家聊聊关于phpcmsx源码,以及在phpcms做的网站中,直接修改源代码,不在后台进行,过段时间,代码为什么会被自动改回来对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录在phpcms做的网站中,直接修改源代码,

2025年10月7日 04:15

近期文章

本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索