我是一个Java新手...我需要怎么知道到reload一个JPanel?我扩展了JPanel类并创建了一个将cardlayout在Applet中运行的面板.reload/refresh在用户单击button此面板中的a后,我想要此面板.我尝试在按钮中包含revalidate()和repaint()方法(我不太了解的方法)ActionListener但没有发生任何事情.任何人都可以了解如何正确刷新整个面板?
我是 C++ 新手,所以仍在学习指针并习惯使用它们。
我声明了一个对象映射,以便存储用户稍后可以使用标签键访问的对象。
map<string,MyObject*> myMap;
Run Code Online (Sandbox Code Playgroud)
我添加到 myMap 的对象是在我的 main 调用的函数中创建的
void myFunction(){
...
MyObject obj1();
MyObject* objPtr;
objPtr = &obj1;
myMap.insert(pair<string,MyObject*>("xxxx", objPtr));
...
}
Run Code Online (Sandbox Code Playgroud)
当我执行这个函数时,对象指针完美地插入到 myMap 中,但是在函数执行之后,我丢失了对 obj1 的引用,我猜是因为指针和对象是在函数内部本地创建的,所以我仍然有一个元素“xxx”地图,但我认为后面是一个空参考。
如何全局保存对象和引用?我想在函数中创建这个对象,因为它有一些需要从用户 obj1(m,n) 获取的变量参数。谢谢你的帮助。
我是C++的新手.我正在开发一个项目,我需要通过控制台从用户那里读取大部分整数.为了避免某人输入非数字字符,我考虑将输入作为字符串读取,检查其中只有数字,然后将其转换为整数.我创建了一个函数,因为我需要多次检查整数:
bool isanInt(int *y){
string z;
int x;
getline(cin,z);
for (int n=0; n < z.length(); n++) {
if(!((z[n] >= '0' && z[n] <= '9') || z[n] == ' ') ){
cout << "That is not a valid input!" << endl;
return false;
}
}
istringstream convert(z); //converting the string to integer
convert >> x;
*y = x;
return true;
}
Run Code Online (Sandbox Code Playgroud)
当我需要用户输入一个整数时,我会调用这个函数.但由于某种原因,当我调用此函数时,程序不会等待输入,它会立即跳转到for循环处理空字符串.有什么想法吗?谢谢你的帮助.
让它工作!谢谢你们!
代码如下。我曾经使用过,BoxLayout因为我认为将一个问题堆叠在一起是理想的,但现在我遇到了布局问题......当我堆叠几个问题时,问题面板开始重叠。有什么想法吗?

panels1 = new MultipleChoice[5];
setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
for(int i=0; i<4; i++){
panels1[i]= new MultipleChoice();
panels1[i].setAlignmentX(CENTER_ALIGNMENT);
add(panels1[i]);
}
setVisible(true);
Run Code Online (Sandbox Code Playgroud)
我正在设计一个在线测试小程序。
测试有多项选择和真/假问题。为了设置测试,我创建了两个JPanel类,一个用于选择题,另一个用于真/假问题。因此,当创建测试时,我将JPanel根据非固定数量的问题将这些面板动态添加到容器中。
首先,如何将新面板动态添加到面板?我想过声明一个JPanel类型的数组。我创建然后使用for循环添加此面板类的对象:
MultitipleChoicePanel[] PanelArray;
for (...){
PanelArray[i] = new MultipleChoicePanel();
containerpanel.add(PanelArray[i]);
}
Run Code Online (Sandbox Code Playgroud)
我不知道这在技术上是否可行。
这是我第一次使用 Swing,我尝试过这样做,但显然没有用。
有谁知道如何正确地动态添加这些面板?
其次,哪个布局管理器最适合容器面板,以适应在前一个面板下添加的每个新面板?
我考虑过动态设置GridLayout一列,并在添加面板时添加行。但我一直在努力动态修改摆动。
有什么建议?
非常感谢你的帮助!