我想在JFrame的开始禁用JPanel 我知道我必须使用的代码,但是我不知道该放在哪里
public class Fenetre1 extends JFrame {
//code JFrame
private class Affichage implements ActionListener {
//action
}
}
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Fenetre1 f = new Fenetre1 ();
f.panel.setEnabled(false);
}
答案 0 :(得分:1)
创建JPanel时可以设置setEnabled(false)。如果要切换启用JPanel的功能,则可能应该使用侦听器。
Java文档(https://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html)中的注释
注意:禁用组件不会禁用其子代。
注意:禁用轻量级组件不会阻止其接收MouseEvent。
JFrame jframe = new JFrame();
JPanel jpanel = new JPanel();
jpanel.setEnabled(false);
jframe.add(jpanel);
答案 1 :(得分:0)
也许.as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}
不能聚焦,但public class TokenAuthenticate : Attribute, IAuthenticationFilter
{
public bool AllowMultiple
{
get
{
return false;
}
}
public async Task AuthenticateAsync(HttpAuthenticationContext context, CancellationToken cancellationToken)
{
try
{
IAuthService _authService = context.ActionContext.ControllerContext.Configuration
.DependencyResolver.GetService(typeof(IAuthService)) as IAuthService;
HttpRequestMessage request = context.Request;
AuthenticationHeaderValue authorization = request.Headers.Authorization;
if (authorization == null)
{
context.ErrorResult = new AuthenticationFailureResult("Missing autorization header", request);
return;
}
if (authorization.Scheme != "Bearer")
{
context.ErrorResult = new AuthenticationFailureResult("Invalid autorization scheme", request);
return;
}
if (String.IsNullOrEmpty(authorization.Parameter))
{
context.ErrorResult = new AuthenticationFailureResult("Missing Token", request);
return;
}
Boolean correctToken = await _authService.ValidateTokenAsync(authorization.Parameter);
if(!correctToken)
context.ErrorResult = new AuthenticationFailureResult("Invalid Token", request);
}
catch (Exception ex)
{
context.ErrorResult = new AuthenticationFailureResult("Exception: \n" + ex.Message, context.Request);
}
}
}
或JPanel
之类的 Object 可以聚焦。
如果您有JTextField
中的某些对象,请使用JTextArea
。
答案 2 :(得分:0)
您的回答使我有些受启发,我在JPanel中使用了一个组件表 因此,我遍历整个表格并禁用了每个组件 我将代码放在继承了JFrame的类中:
for(int j= 0;j<tab_component.length;j++)
{
tab_buttonsOperateur[j].setEnabled(false);
}
仍然感谢