返回
首页>资讯

设置Tab键的顺序(vb中Tab键怎样控制焦点在文本框中顺序移动)

时间: 2023-04-11 23:27:24

设置Tab键的顺序

设置步骤如下:

1、启动VS2012,用软件新建一个MFC应用程序;

2、在默认的对话框上添加相应控件;

3、对话框添加控件可以少添几个;

4、在这此界面下按住快捷键CTRL加D键会显示这些控件的TAB顺序;

5、然后单击需要修改的控件,此控件的TAB顺序即可改为鼠标点击的顺序,此时注意1号控件;

6、当运行控件时1号控件为TAB键第一次选中状态,需要再按次进行TAB,待跳到TAB顺序为2的控件上,此时控件的修改顺序即可完成。

vb中Tab键怎样控制焦点在文本框中顺序移动

tabindex属性决定了按TAB键时交点在控件中的移动顺序,可以修改文本框的tabindex属性,时交点按一定的顺序移动,tabstop属性设置为FALSE决定控件跳过tab键的交点移动。

在VC++中怎样改变控件间的TAB切换顺序

关于焦点问题
一开始的焦点是按照你安排控件的先后顺序排序
比如你先拖拽一个按钮而后拖拽一个文本框
那么按钮的焦点为1 文本框焦点为2
当你有很多控件的时候 你可以选择VC工具栏--LAYOUT---Tab order
来查看一下焦点的顺序
这是默认的焦点顺序
如果你用语句设置的焦点顺序 那么它的优先级最高
当你用到TAB键切换时 焦点从人为设置到默认设置 但有可能你的按钮焦点没有马上起作用
当循环一次时候 才会起作用
所以你想让在第一次切换就起作用建议你认为设置按钮的焦点为第2个焦点
这样应该会起作用

java swing中如何设置按钮tab键顺序?

参考java.swing.InputVerifier类
以下摘自API:
此类的用途是通过带文本字段的 GUI 帮助客户端支持流畅的焦点导航。在允许用户导航到文本字段以外之前,这类 GUI 常常需要确保用户输入的文本是有效的(例如,文本具有正确的格式)。为做到这一点,客户端要使用 JComponent 的 setInputVerifier 方法创建 InputVerifier 的子类,并将其子类的实例附加到想要验证其输入的 JComponent 中。在将焦点转移到另一个请求它的 Swing 组件之前,要调用输入验证器的 shouldYieldFocus 方法。只在该方法返回 true 时才转移焦点。
以下示例有两个文本字段,其中第一个字段期望用户输入字符串 "pass"。如果在第一个文本字段中输入该字符串,那么用户可以通过在第二个文本字段上单击或按下 TAB 前进到第二个文本字段。不过,如果将其他字符串输入到第一个文本字段中,则用户无法将焦点转移到第二个文本字段。
import java.awt.*;
import java.util.*;
import java.awt.event.*;
import javax.swing.*;

// This program demonstrates the use of the Swing InputVerifier class.
// It creates two text fields; the first of the text fields expects the
// string "pass" as input, and will allow focus to advance out of it
// only after that string is typed in by the user.
public class VerifierTest extends JFrame {
public VerifierTest() {
JTextField tf1 = new JTextField ("Type "pass" here");
getContentPane().add (tf1, BorderLayout.NORTH);
tf1.setInputVerifier(new PassVerifier());

JTextField tf2 = new JTextField ("TextField2");
getContentPane().add (tf2, BorderLayout.SOUTH);

WindowListener l = new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
};
addWindowListener(l);
}

class PassVerifier extends InputVerifier {
public boolean verify(JComponent input) {
JTextField tf = (JTextField) input;
return "pass".equals(tf.getText());
}
}

public static void main(String[] args) {
Frame f = new VerifierTest();
f.pack();
f.setVisible(true);
}
}

猜你喜欢

本站内容仅供参考,不作为诊断及医疗依据,如有医疗需求,请务必前往正规医院就诊
祝由网所有文章及资料均为作者提供或网友推荐收集整理而来,仅供爱好者学习和研究使用,版权归原作者所有。
如本站内容有侵犯您的合法权益,请和我们取得联系,我们将立即改正或删除。
Copyright © 2022-2023 祝由师网 版权所有

备案号:鲁ICP备2022001955号-4

网站地图