首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【译】W3C WAI-ARIA最佳实践 -- 布局

数据网格键盘交互 以下键通过在网格单元格之间移动焦点来提供网格导航。默认情况,这些键盘命令在网格元素接收到焦点默认可用。例如,用户将焦点移动具有 Tab 网格。...如果焦点位于列顶部单元格上,则焦点不会移动。 Page Down: 以开发者设定行数移动焦点,一般滚动,当前可见集合最后一会变为第一次滚动可见。...Page Up: 移动焦点到开发者设定行数,一般滚动,当前可见集合第一会变为滚动可见。 Home: 将焦点移动到包含焦点所在行第一个单元格。...如果焦点位于网格第一个单元格上,则焦点不会移动。 Page Down (可选地): 以开发者设定行数向上移动焦点,一般情况,当前可见第一会成为滚动可见。...随后 F2 恢复网格导航功能。 字母数字键: 如果单元格包含可编辑内容,则会将焦点放在输入框,例如 textbox。

6.1K50
您找到你想要的搜索结果了吗?
是的
没有找到

小白学Python - 用Python制作 2048 游戏

如果您对游戏不熟悉,强烈建议您先玩一游戏,以便了解游戏基本功能。 如何玩2048: 1.有一个4*4网格,可以填充任意数字。最初,两个随机单元格填充有 2。休息单元是空。...当我下任意键单元格元素会沿该方向移动,这样,如果该特定(向左或向右移动情况)或列(向上和向下移动情况)包含任何两个相同数字,它们就会得到加起来,该方向极端单元用该数字填充自身,其余单元再次变空...3.网格压缩,任何随机单元格都会被 2 填充。 4.按照上述过程,我们必须将任意单元格元素相加,使其加倍,得到 2048。如果我们能够做到这一点,我们就赢了。...因此,为了单独理解其背后逻辑,我们可以假设上面的网格是一个 4*4 矩阵(具有四四列列表)。您可以在下面看到上述游戏在没有 GUI 情况进行输入和输出方法。...for j in range(3): # 如果当前单元格与同一下一个单元格具有相同,并且它们都不为空,则 if(mat[i][j] == mat[i][j + 1] and

21420

CSS Grid 那些鲜为人知内幕

容器高度固定 当我们将容器高度固定,在这种情况,其内部项目的高度会「均分」容器高度。也就是当拥有多个项目它们被分成大小相同。 4. 创建网格单元 默认情况,Grid将创建单列布局。...❞ 一个有4列网格实际上有5条列线。当我们将子项分配到网格,我们使用这些线来锚定它们。如果我们希望子项跨越前3列,它需要从第1开始,并在第4结束。...当我们想让特定区域跨越多行或多列,我们可以在我们模板「重复该区域名称」。在这个例子,sidebar区域跨越了两,所以我们在第一列两个单元格中都写了 sidebar。...在这个示例,我设置了一组按钮,并使用 Grid 对它们进行了排列: 如果我们使用是带有键盘设备,可以通过点击左上角第一个按钮(One),然后 Tab 键逐个移动按钮。...为了解决这个问题,我们应该重新视觉顺序在 DOM 重新排列网格子项,以便我可以从左到右,从上到进行 Tab 键浏览。 6.

12710

ChatGPT自动化编程:三分钟用Tkinter搞定计算器

在下部分实现类似计算器按钮一样网格布局。网格是44列。每一个单元格是一个按钮,从做到右,从上到按钮文本分别是7、8、9、/、4、5、6、*、1、2、3、-、0、.、=、+。...', '=', '+' ] # 创建按钮,并使用网格布局放在窗口下部分 # 初始化和列计数器 row = 1 col = 0 # 遍历按钮文本,创建对应按钮 for button in buttons...row += 1 # 设置和列权重,使它们在窗口大小改变能够比例缩放 for i in range(5): root.grid_rowconfigure(i, weight=1)...但这个Button对象并没有单独保存在变量,导致了后面的代码无法再次使用这个Button对象,所以需要按如下方式手动改进一: for button in buttons: # 创建按钮并放置在相应网格位置...('', click) 然后在生成代码后面再次输入如下注释: # 点击”=“按钮,计算输入框表达式,并将结果显示在输入框,给出实现代码 不断Enter和Tab键,

17010

Flutter&Flame游戏实践#13 | 扫雷 - 界面交互

复杂单元格也可以提高游戏可玩性,是一个非常优秀游戏玩法设计。 3. 游戏交互细节 下面动态图中展示了扫雷游戏基本交互,包括: 及拖动过程,对应单元格处于状态。...比如网格宽高是行列数乘以单元格尺寸; Hud 尺寸高度是两个单元格大小;宽度是网格宽度。表情按钮大小是 1.5 被单元格大小。...将方法独立封装,可以带来很强复用性,比如要增加点击事件,额外混入 TapCallbacks,复写 onTapDown 方法调用 pressed 即可: 四、HUD 处理 HUD 包含三个部分...,左侧是地雷个数,中间是按钮,右侧游戏开始秒数。...表情按钮构件:FaceButton 虽然表情按钮非常简单,但是其中蕴含着一个很重要知识点:如何管理表情。 如下所示,在单元格点击和拓展,如何改变表情呢?

25210

5、Java Swing布局管理器(FlowLayout、BorderLayout、CardLayout、BoxLayout、GirdBagLayout 和 GirdLayout)

每个单元格大小一样,而且放置组件,只能从左到右、由上到顺序填充,用户不能任意放置组件。...其应该设为常数CridBagConstraints.RELATIVE 。然后标准顺序将组件加入网格包布局。从左到右,从上到。           ...组件被添加到容器划分好单元格。当容器发生改变(伸缩)单元格也随之伸缩,装载在单元格组件也相应会进行伸缩。       以下图为例:此容器被分为45列。...由图可看出,每一列宽度并不是固定,也不是平均宽度。同理每一高度也不是均分,可以按照实际情况进行分配列宽度和高度。组件可以放在容易一个cell单元格,也可以占几个单元格。...如果这个button横跨多个单元格,计算顺序是从左上到右下,则字符串前两个放第一格坐标,两个最后一格坐标,例如,从(0,0)到(3,0),表示为:panel.add(button,”0,0,3,0

6.1K00

《算法图解》-9动态规划 背包问题,行程最优化

你将填充其中每个单元格网格填满,就找到了问题答案。 1 吉他 这是第一,只有吉他可供你选择。第一个单元格表示背包容量为1磅。吉他重量也是1磅,这意味着它能装入背包!...你可能认为,计算最后一个单元格价值,我使用了不同公式。那是因为填充之前单元格,我故意避开了一些复杂因素。其实,计算每个单元格价值,使用公式都相同。 这个公式如下。...2.2 排列顺序发生变化时结果将如何 假设你如下顺序填充各行:音响、笔记本电脑、吉他。网格将会是什么样?请自己动手填充这个网格,再接着往下读。 答案没有变化。...计算单位更新如(0.5)。...当我在纸上画这个网格,逐个元素去填计算时候,边上土豪QA妹子,应该不应这么纠结,多待两天都逛完了。可见钱能解决90%问题。

95541

个人永久性免费-Excel催化剂功能第66波-数据快速录入,预定义引用数据逐字提示

配置信息 3、对规则活动状态进行勾选及对快速录入总开关进行开启 跳转到需要录入数据工作表,然后通过菜单打开【快速录入规则开关】,鼠标或键盘移动单元格至对应起作用区域上,将会跳出对应规则逐字提示列表...多个作用区域 跳转到D列,打开D列对应规则清单 实现同一录入区域多个规则自动切换 跳转到G列,打开G列对应规则清单 4、纯键盘操作高效数据录入实践 当键盘ENTER、TAB、和方向箭上下左右等按钮单元格进行移动...当光标跳转到查找字符串位置,无输入内容情况,同样可利用ENTER、TAB、和方向箭上下左右等按钮回到单元格移动,跳出快速录入面板。...当光标跳转到查找字符串位置,输入相应关键字内容,方向箭上下按钮可移动到下方引用数据区域清单,当确定某一记录为所需结果,即可使用ENTER或TAB键进行上屏操作,两者不同在于上屏鼠标移动下一单元格...选定所需数据ENTER或TAB即可上屏 简单录入动态图演示,更详细视频操作演示可在相应视频查看,视频地址可私信笔者获取

54620

图解CSS布局(一)- Grid布局

inline-grid:生成一个网格 .container { display: grid; /* display: inline-grid; 网格*/ } 在大多数场景我们往往采用...简单说就是重复后面的几遍 auto-fill关键字 表示自动填充,让一(或者一列)尽可能容纳更多单元格 当我们只需要确定列宽或者高,而不用理有多少列,就可以使用它了 .container...5. grid-auto-flow 属性 划分网格以后,容器子元素会按照顺序,自动放置在每一个网格。默认放置顺序是"先行列",即先填满第一,再开始放入第二,即下图数字顺序。...注意:盒子排列顺序变成了先列后行 还有两个特殊属性row dense和column dense 当我调整我们代码将某一个项目拉长,会有这一放不下情况,就像图片左边这个场景一样,第6个项目因为太长了放不上去...设置多余网格 对于网格有显式网格和隐式网格,显示网格通过grid-template-columns 和 grid-template-rows 属性定义和列,当实际行数或者列数大于设置行列数,就会有多余网格

1.8K10

如何在低代码平台中引用 JavaScript ?

上面页面显示内容大体逻辑是,为三个单元格进行了命令,分别为x,y,plus,当我们在x,y单元格输入数字,点击按钮执行 JavaScript 命令调用我们 add 方法,就可以计算出对应和。...}); 以上我们上传了一个简单 JavaScript 文件,当我们点击页面上按钮,会触发弹出一个警告弹出,效果如下所示: 指定元素自定义 JavaScript 前面小编为大家介绍了注册应用程序级别的...; 实现效果如下所示: 引入JavaScript API 通过上面演示,可以看到,在活字格可以通过 JavaScript 操作页面、单元格,除此之外,还可以操作页面上表格,接下来我们通过一个示例来演示如何操作表格...//获取当前页面 var page = Forguncy.Page; //获取页面上表格 var listview = page.getListView("表格1"); //添加新 listview.addNewRow...( { "name": "Jack", "sex": "male", "age": "17" } ); 可以看到,当我们触发按钮命令,就可以通过刚才

14910

Java Swing JTable

使用专门渲染器和编辑器。 JTable仅使用整数来引用它显示模型和列。 JTable只是采用表格形式单元格范围,并在绘制过程中使用getValueAt(int,int)从模型检索。...此添加方式适合表格行数确定,数据量较小,能一次性显示完表格; 添加到JScrollPane滚动容器,此添加方式不需要额外添加表头,jTable添加到jScrollPane,表头自动添加到滚动容器顶部...*/ public Class getColumnClass(int columnIndex); 判断指定单元格是否可编辑 如果和列单元格是可编辑,则返回true。...否则,在单元格上调用setValueAt将无效。 注意:该列是表视图显示顺序指定,而不是TableModel列顺序指定。.../** 获取指定单元格 */ public Object getValueAt(int rowIndex, int columnIndex); /** 设置指定单元格 */ public

5K10

AV 详解

,就可以通过“SELFLAG”来判断ALV显示项目是否被选中。... 模式 可能选择 注释 SPACE 等同于B 参考B 默认设置 \’A\’ 和列选择,无法选择单元格 多行,多列 用户可以使用最左边选择按钮来选择多行 \’B\’ 单选,不可以多选,不可以多选单元格...功能五:颜色设置 有的时候,我们需要在ALV网格上绘上一些颜色.可以给特定,某个特定列,某个特定单元格绘制颜色....cellstyle字段内容 3.设置样式输出控制结构stylename字段内容为单元格状态控制字段名 3.7、cell 更新事件 ALV单元格设置为可输入,通常我们需要对单元格输入做一个检查...其中i_event_id = cl_gui_alv_grid=>mc_evt_enter 表示在单元格修改回车或者执行其他操作触发事件,此类型可用于多个单元格修改一起检查修改 i_event_id

1.2K20

grid布局了解一

举个例子 就如腾讯视频这种卡片(卡片就是单元格并且是固定大小),当我们缩小屏幕后,容器宽度改变了,其一有多少单元格,就会自动分配。...我们缩小一窗口,又进行了新宽度分配。 再看一,我们 1:2:3比例分配。...如下最小为150px 最大为1fr,当我们缩小浏览器窗口,可以看到第一列元素还在变小,而第二列元素固定在了150px。...如下图,横纵方向都有四/列,然后就有5条网格线。 针对我们例子,添加一网格线是帮助定位使用,我们添加也体现不出效果,我们后面会说到。...grid-auto-flow 划分网格,容器子元素会按照顺序,自动放置在每一个网格,默认是 先填满第一,然后再开始第二。也就是说我们 grid-auto-flow属性,默认是row。

42920

目录

结果是网格布局随着窗口大小调整而平滑地扩展和收缩: 自己尝试一,以了解它工作原理!试一weight和minsize参数,看看它们如何影响网格。 默认情况,小部件在其网格单元居中。...注:一个事件是事件循环可能引发应用程序一些行为,当下一个键或鼠标按钮,如期间发生任何行动。 当事件发生,将发射事件对象,这意味着将实例化表示该事件实例。你不必担心自己创建这些类。...command 每个Button小部件都有一个command可以分配给函数属性。每当按钮,都会执行该功能。 看一个例子。首先,你将创建一个带有Label包含数值窗口小部件窗口。...你将在标签左侧和右侧放置按钮。左按钮将用于减小,右按钮将Label增大该。...从左按钮开始。按钮,应该将标签减小1。要执行此操作,需要知道两件事: 你如何在获取文字Label? 如何更新文字Label?

29.7K20

【Android 应用开发】AndroidUI设计之 布局管理器 - 详细解析布局实现

, 并且组件中含有子元素, 所获取实际是这些组件所占最小宽度和最小高度....常量值; 规律 : 从View.getLayoutParams()获取 width, height , 在布局xml文件设置是什么, 获取时候就得到是什么; (2) 在LinearLayout...View.setLayoutParams()方法, 传入刚才创建LayoutParams对象, 并更新View相应LayoutParams属性, 向容器添加该组件; 代码动态设置布局属性 :...组件增加行 : 如果直接向TableLayout添加组件, 就相当于直接添加了一; 列宽 : TableLayout, 列宽度由该列最宽单元格决定, 整个表格宽度默认充满父容器本身; 2....表格布局实例 实现要点 :  独自一按钮 : 向TableLayout添加按钮, 这个按钮就会独自占据一; 收缩按钮: 在TableLayout标签,设置android:stretchable

2.4K40

Excel 常用九十九个技巧 Office 自学教程快速掌握办公技巧

允许用户自定义界面的电子制表软件包括字体、文字属性和单元格格式,它还引进了智能重算功能,当单元格数据变动,只有与之相关数据才会更新,荒岛本次带来九十九个 Excel 技巧,提高您办公效率。...6、怎样快速删除“0”单元格组合键【Ctrl+F】导出查找对话框,选择【查找】选项卡,在输入栏输入:0,点击【全部查找】再按组合键【Ctrl+A】就会显示表格内容为 0 所有单元格,选中单元格右击...23、快速切换至另一个 Excel 窗口当我们需要查阅两个表格文件内容,可直接组合键【Ctrl+Tab】键切换表格窗口。...35、在合并保留所有单元格内容选取单元格区域,并把列宽拉到可以容下所有单元格合并宽度,点击菜单栏【开始】选项卡,选择【两端对齐】把多个单元格内容合并到一个单元格,在分隔空隔处组合键【...92、插入任意多空行当你选取并把光标放在右下角, shift 键,你会发现光标会变成如下图所示形状。

7K21

11. 快速上手!HarmonyOS4.0 Grid_GridItem容器组件详解

本章内容概要 Grid组件说明 网格容器,由“”和“列”分割单元格所组成,通过指定“项目”所在单元格做出各种各样布局。包含GridItem子组件。...GridItem 组件说明 网格容器单项内容容器。 Grid属性讲解 columnsTemplate 设置当前网格布局列数量,不设置默认1列。...注意: 设置为’0fr’,则这一行宽为0,这一GridItem不显示。设置为其他非法固定1处理。...Gird网格列大小按照Gird自身内容区域大小减去所有行列Gap各个行列所占比重分配。 GridItem默认填满网格大小。...网格交叉轴方向尺寸根据Gird自身内容区域交叉轴尺寸减去交叉轴方向所有Gap所占比重分配。 网格主轴方向尺寸取当前网格交叉轴方向所有GridItem高度最大

10100
领券