我正在尝试使用createDialog将三个按钮垂直堆叠到JOptionPane上,但它不能完全使用GridLayout.此外,我不知道如何摆脱'确定'按钮.你可能想知道我为什么这样做,但这是我被告知这样做的方式.我想我可以使用JFrame,但我不认为这与JOptionPane相处得很好,因为这就是我希望按钮堆叠的地方.
它应该是这样的:
| 需要帮助|
| 帮助我|
| 计数|
我需要在某些时候添加动作侦听器的可访问性,但在我甚至可以达到这一点之前,这似乎变得复杂.
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.*;
public class ThreeButtons {
static JDialog dialog;
public static void main(String[] args) {
JOptionPane optionPane = new JOptionPane();
optionPane.setMessage("Set Message");
optionPane.setMessageType(JOptionPane.INFORMATION_MESSAGE);
optionPane.setLayout(new GridLayout(3,1));
String[] buttonTxt = {"Need Help","Help Me","Counting"};
JButton[] buttons = new JButton[buttonTxt.length];
for (int i = 0; i < buttonTxt.length; i++)
{
buttons[i] = new JButton(buttonTxt[i]);
optionPane.add(buttons[i]);
}
dialog = optionPane.createDialog(null, "Icon/Text Button");
dialog.setVisible(true);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在努力使用calloc和realloc进行数组初始化.我正在尝试编写一个程序,它使用fork()和一个伴随程序从命令行参数计算最终总和.
如果我从命令行收到一组奇数整数,例如:./ program 1 2 3 4 5.
它应该看到数量是奇数并将我的输入数组初始化为6个点并在最后一个点放置零.如下:[0] = 1,[1] = 2,[2] = 3,[3] = 4,[4] = 5,[5] = 0.这样我的同伴程序就能做到了计算.
如果我从命令行接收偶数量的整数,例如:./ program 1 2 3 4.它将执行与上面相同的操作,除非没有零,因为整数集是偶数.
输出数组应初始化为整数除以2的数量.因此,如果我有6个参数,它将被初始化为3.如果我收到奇数的整数,如7,它将重新分配输入数组并放入最后的零,从而产生整数8.因此它将它除以2并使输出初始化为4.
我的输出数组最终会保存每对数字的总和.所以上面就是这样.
1 + 2 = 3,3 + 4 = 7,5 + 0 = 5.
然后输出数组将保持[3],[7],[5].然后循环将从那继续并从剩余的参数计算最终总和.
我无法理解这一点,因为我的数组没有正确初始化,如果参数数为奇数,则将零添加到输入数组.
请参阅以下代码:
#include <stdio.h> /* printf, stderr, fprintf */
#include <unistd.h> /* _exit, fork */
#include <stdlib.h> /* exit */
#include <errno.h> /* errno */
#include <sys/wait.h>
int main(int argc, char** argv)
{
int size = argc …Run Code Online (Sandbox Code Playgroud)