- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我调用内部类 JFrame
时,它被调用并且正在显示,但外部类 JFrame
没有隐藏。我在这里提供我的代码。非常具体地说,我正在尝试填写表格,然后我想预览我所写的表格。
package com.vote.rmc;
public class LRegister extends JFrame implements ActionListener {
final public JFrame rframe = new JFrame();
JLabel
public LRegister() {
rframe.setSize(800, 600);
rframe.setLocationRelativeTo(null);
cp = getContentPane();
cp.setLayout(null);
setSize(550, 300);
rframe.setTitle("User Registration Form");
cp.setBackground(new Color(140, 180, 180));
JTextArea plainTextArea = new JTextArea();
JScrollPane scrollPanePlain = new JScrollPane(plainTextArea);
cp.add(scrollPanePlain);
scrollPanePlain.setBounds(150, 250, 150, 100);
scrollPanePlain.setVisible(true);
CFirstName = new JLabel("First Name");
CLastName = new JLabel("Last Name");
DOB = new JLabel("Date Of Birth");
FatherName = new JLabel("Father's Name");
PhoneNumber = new JLabel("Phone Number");
address = new JLabel("Address");
departmentName = new JLabel("Department Name");
Year = new JLabel("Year");
EmailID = new JLabel("Email ID");
jpic = new JLabel("Upload your Picture");
l = new JLabel("Candidates Information");
jlmsg = new JLabel("", JLabel.CENTER);
Cfname = new JTextField(10);
Clname = new JTextField(10);
birth = new JTextField(10);
Fname = new JTextField(10);
PhNum = new JTextField(10);
addrss = new JTextField(10);
deptName = new JTextField(10);
Yr = new JTextField(10);
mailID = new JTextField(10);
jbsubmit = new JButton("PREVIEW");
jbrowse = new JButton("BROWSE PICTURE");
jbexit = new JButton("CLOSE");
l.setBounds(270, 10, 250, 35);
CFirstName.setBounds(10, 50, 100, 35);
Cfname.setBounds(150, 55, 150, 25);
CLastName.setBounds(400, 50, 500, 35);
Clname.setBounds(550, 50, 150, 25);
DOB.setBounds(10, 100, 100, 35);
birth.setBounds(150, 105, 150, 25);
FatherName.setBounds(10, 150, 100, 35);
Fname.setBounds(150, 155, 150, 25);
PhoneNumber.setBounds(400, 100, 500, 35);
PhNum.setBounds(550, 100, 150, 25);
departmentName.setBounds(400, 150, 500, 35);
deptName.setBounds(550, 150, 150, 25);
EmailID.setBounds(10, 190, 150, 50);
mailID.setBounds(150, 200, 150, 25);
address.setBounds(10, 250, 100, 35);
addrss.setBounds(150, 250, 150, 100);
Year.setBounds(400, 200, 500, 35);
Yr.setBounds(550, 200, 150, 25);
jbsubmit.setBounds(150, 380, 92, 25);
//jbnew.setBounds(300,380,92,25);
jbexit.setBounds(450, 380, 92, 25);
jpic.setBounds(400, 250, 500, 35);
jbrowse.setBounds(550, 253, 150, 25);
jbsubmit.addActionListener(this);
//jbnew.addActionListener(this);
jbrowse.addActionListener(this);
jbexit.addActionListener(this);
cp.add(jpic);
cp.add(Cfname);
cp.add(CFirstName);
cp.add(CLastName);
cp.add(DOB);
cp.add(EmailID);
cp.add(FatherName);
cp.add(Clname);
cp.add(Fname);
cp.add(departmentName);
cp.add(deptName);
cp.add(Year);
cp.add(birth);
cp.add(Fname);
cp.add(PhNum);
cp.add(addrss);
cp.add(Yr);
cp.add(mailID);
cp.add(DOB);
cp.add(PhoneNumber);
cp.add(address);
cp.add(jbsubmit);
//cp.add(jbnew);
cp.add(jbexit);
cp.add(jbrowse);
cp.add(l);
rframe.add(cp);
rframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
rframe.setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
String action = ae.getActionCommand();
if (action == "PREVIEW") {
new B();
rframe.setVisible(false);
}
if (action == "CLOSE") {
rframe.setVisible(false);
}
if (action == "BROWSE PICTURE") {
if (ae.getSource() == jbrowse) {
analizepath();
rframe.setVisible(true);
}
}
}
private File getFile() {
JFileChooser filechooser = new JFileChooser();
filechooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
@SuppressWarnings("unused")
int result = filechooser.showOpenDialog(this);
File filename = filechooser.getSelectedFile();
if ((filename == null) || (filename.getName().equals(""))) {
JOptionPane.showMessageDialog(this, "invalid filename", "invalidfilename", JOptionPane.ERROR_MESSAGE);
}
return filename;
}
public void analizepath() {
File name = getFile();
path = name.getAbsolutePath();
picture = new ImageIcon(path);
pic = new File(path);
try {
inputStream = new FileInputStream(pic);
} catch (Exception d) {
System.out.println(d);
}
System.out.print(path);
}
class B {
JFrame frame = new JFrame();
public B() {
B.this.frame.setSize(800, 600);
B.this.frame.setLocationRelativeTo(null);
cp = getContentPane();
cp.setLayout(null);
setSize(550, 300);
B.this.frame.setTitle("Preview Form");
cp.setBackground(new Color(140, 180, 180));
JTextField c = LRegister.this.Cfname;
String cfn = c.getText();
System.out.println(cfn);
CFirstName = new JLabel(cfn);
CLastName = new JLabel("Last Name");
DOB = new JLabel("Date Of Birth");
FatherName = new JLabel("Father's Name");
PhoneNumber = new JLabel("Phone Number");
address = new JLabel("Address");
departmentName = new JLabel("Department Name");
Year = new JLabel("Year");
EmailID = new JLabel("Email ID");
jpic = new JLabel("Your Picture");
l = new JLabel("Preview Your Form Before Submitting");
jlmsg = new JLabel("", JLabel.CENTER);
l.setBounds(270, 10, 250, 35);
CFirstName.setBounds(10, 50, 100, 35);
CLastName.setBounds(400, 50, 500, 35);
DOB.setBounds(10, 100, 100, 35);
FatherName.setBounds(10, 150, 100, 35);
PhoneNumber.setBounds(400, 100, 500, 35);
departmentName.setBounds(400, 150, 500, 35);
EmailID.setBounds(10, 190, 150, 50);
address.setBounds(10, 250, 100, 35);
Year.setBounds(400, 200, 500, 35);
jpic.setBounds(400, 250, 500, 35);
cp.add(jpic);
cp.add(CFirstName);
cp.add(CLastName);
cp.add(DOB);
cp.add(EmailID);
cp.add(FatherName);
cp.add(departmentName);
cp.add(Year);
cp.add(DOB);
cp.add(PhoneNumber);
cp.add(address);
cp.add(l);
frame.repaint();
B.this.frame.add(cp);
B.this.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
B.this.frame.setVisible(true);
}
}
最佳答案
您正在创建多个不同的 JFrame
实例,这些实例彼此之间没有连接...
public class LRegister extends JFrame implements ActionListener {
final public JFrame rframe = new JFrame();
LRegister
是一个 JFrame
,您可以在其上构建 UI(据我所知)。但随后您尝试更改 rframe
的可见性状态?
您可以考虑使用CardLayout
而不是诉诸使用不同的框架,但这意味着您需要开始使用 Layout Managers直接
通读一下How do I compare strings in Java?也是个好主意。和 The Use of Multiple JFrames: Good or Bad Practice?
关于java - 调用内部类的JFrame并隐藏外部类的JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19534152/
为了让我的代码几乎完全用 Jquery 编写,我想用 Jquery 重写 AJAX 调用。 这是从网页到 Tomcat servlet 的调用。 我目前情况的类似代码: var http = new
我想使用 JNI 从 Java 调用 C 函数。在 C 函数中,我想创建一个 JVM 并调用一些 Java 对象。当我尝试创建 JVM 时,JNI_CreateJavaVM 返回 -1。 所以,我想知
环顾四周,我发现从 HTML 调用 Javascript 函数的最佳方法是将函数本身放在 HTML 中,而不是外部 Javascript 文件。所以我一直在网上四处寻找,找到了一些简短的教程,我可以根
我有这个组件: import {Component} from 'angular2/core'; import {UserServices} from '../services/UserService
我正在尝试用 C 实现一个简单的 OpenSSL 客户端/服务器模型,并且对 BIO_* 调用的使用感到好奇,与原始 SSL_* 调用相比,它允许一些不错的功能。 我对此比较陌生,所以我可能会完全错误
我正在处理有关异步调用的难题: 一个 JQuery 函数在用户点击时执行,然后调用一个 php 文件来检查用户输入是否与数据库中已有的信息重叠。如果是这样,则应提示用户确认是否要继续或取消,如果他单击
我有以下类(class)。 public Task { public static Task getInstance(String taskName) { return new
嘿,我正在构建一个小游戏,我正在通过制作一个数字 vector 来创建关卡,该数字 vector 通过枚举与 1-4 种颜色相关联。问题是循环(在 Simon::loadChallenge 中)我将颜
我有一个java spring boot api(数据接收器),客户端调用它来保存一些数据。一旦我完成了数据的持久化,我想进行另一个 api 调用(应该处理持久化的数据 - 数据聚合器),它应该自行异
首先,这涉及桌面应用程序而不是 ASP .Net 应用程序。 我已经为我的项目添加了一个 Web 引用,并构建了各种数据对象,例如 PayerInfo、Address 和 CreditCard。但问题
我如何告诉 FAKE 编译 .fs文件使用 fsc ? 解释如何传递参数的奖励积分,如 -a和 -target:dll . 编辑:我应该澄清一下,我正在尝试在没有 MSBuild/xbuild/.sl
我使用下划线模板配置了一个简单的主干模型和 View 。两个单独的 API 使用完全相同的配置。 API 1 按预期工作。 要重现该问题,请注释掉 API 1 的 URL,并取消注释 API 2 的
我不确定什么是更好的做法或更现实的做法。我希望从头开始创建目录系统,但不确定最佳方法是什么。 我想我在需要显示信息时使用对象,例如 info.php?id=100。有这样的代码用于显示 Game.cl
from datetime import timedelta class A: def __abs__(self): return -self class B1(A):
我在操作此生命游戏示例代码中的数组时遇到问题。 情况: “生命游戏”是约翰·康威发明的一种细胞自动化技术。它由一个细胞网格组成,这些细胞可以根据数学规则生存/死亡/繁殖。该网格中的活细胞和死细胞通过
如果我像这样调用 read() 来读取文件: unsigned char buf[512]; memset(buf, 0, sizeof(unsigned char) * 512); int fd;
我用 C 编写了一个简单的服务器,并希望调用它的功能与调用其他 C 守护程序的功能相同(例如使用 ./ftpd start 调用它并使用 ./ftpd stop 关闭该实例)。显然我遇到的问题是我不知
在 dos 中,当我粘贴此命令时它会起作用: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" https://google.
在 dos 中,当我粘贴此命令时它会起作用: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" https://google.
我希望能够从 cmd 在我的 Windows 10 计算机上调用 python3。 我已重新安装 Python3.7 以确保选择“添加到路径”选项,但仍无法调用 python3 并使 CMD 启动 P
我是一名优秀的程序员,十分优秀!