小编dwa*_*wat的帖子

Java Swing - JPanel和GridLayout边距/填充

我正在努力用Java构建一个国际象棋游戏,我目前在使用Swing完全按照我想要的方式获取GUI时遇到了一些麻烦.我正在使用a GridLayout来组织一个8x8 ChessButtons 的网格(覆盖它JButton以便我可以在其中存储额外的信息,例如坐标).最初,ChessButtons不会出现,除非我将它们蒙住,但我通过将每个ChessButton内部放置在一个单独的JPanel并将每个按钮设置setPreferredSize()为设定的高度和宽度来解决该问题.

现在,我的问题是每个按钮上方(和/或下方?)似乎有一个小的边距或填充.我已确保设置setHgap(0)setVgap(0)为此GridLayout,所以我很确定神秘的边缘来自按钮或JPanels.但是,我似乎无法摆脱它们,而且它们似乎ChessButton每当我老鼠的时候每个都会上下移动一点点.

我意识到这个问题的描述可能有点难以想象,所以我采取了截图(使用JButtons而不是ChessButtons,因此间隙更容易识别):http://img3.imageshack.us/img3/ 6656/jbuttonmargins.png

这是我用来初始化每个代码的代码ChessButton:

    chessBoard = new JPanel(new GridLayout(8, 8, 0, 0));
    chessBoard.setBorder(BorderFactory.createEmptyBorder());

    for (int i = 0; i <= 65; i++) {
            //Create a new ChessButton
            ChessButton button = new ChessButton("hi");
            button.setBorder(BorderFactory.createEmptyBorder());
            button.setPreferredSize(new Dimension(75, 75));
            button.setMargin(new Insets(0, 0, 0, 0));

            //Create a new JPanel …
Run Code Online (Sandbox Code Playgroud)

java swing border margin grid-layout

3
推荐指数
1
解决办法
4万
查看次数

将FormData从Trigger.io Forge上载到Amazon S3

我正在尝试将我的Trigger.io移动应用程序中的图像文件直接上传到Amazon S3(请参阅此处:http://aws.amazon.com/articles/1434).我可以在网上这样做,使用jQuery和FormDataAPI 没有任何问题,如下所示:

var fd = new FormData();
key = 'test.jpg'

fd.append('key', key);
fd.append('acl', 'public-read');
fd.append('Content-Type', file.type);
fd.append('AWSAccessKeyId', key_id);
fd.append('policy', policy_base64);
fd.append('signature', signature);
fd.append('file', file);

$.ajax({
    type: 'POST',
    url: 'https://' + bucket + '.s3.amazonaws.com/',
    processData: false, // Not supported with Trigger
    contentType: false, // Not supported with Trigger
    data: fd,
    success: function(response) {
        // It worked...
    }
});
Run Code Online (Sandbox Code Playgroud)

但是,我无法使用Forge请求API.这是我尝试过的:

forge.request.ajax({
    type: 'POST',
    url: 'https://' + bucket + '.s3.amazonaws.com/',
    fileUploadMethod: 'raw',
    files: [file],
    data: fd, …
Run Code Online (Sandbox Code Playgroud)

javascript ajax html5 form-data trigger.io

3
推荐指数
1
解决办法
1769
查看次数

Material-UI 主题覆盖:如何全局覆盖儿童样式?

我正在使用ReactJS的Material-UI 库构建一个应用程序。使用Theme Overrides API,我试图弄清楚如何全局设置组件样式,但前提是它是另一个特定组件的子组件。

例如,我试图MenuItem<Select>菜单中设置s的背景/文本颜色,其中每个都<MenuItem>包含一个<listItemText>. 这是我的组件:

import { MenuItem, Select, ListItemText } from '@material-ui/core';
import { MuiThemeProvider } from '@material-ui/core/styles';
import * as React from 'react';
import theme from './theme';

const MySelect = props => {
    return (
        <MuiThemeProvider theme={theme}>
            <Select variant="standard" value="2" open>
                <MenuItem value="1">
                    <ListItemText>One</ListItemText>
                </MenuItem>
                <MenuItem value="2">
                    <ListItemText>Two</ListItemText>
                </MenuItem>
                <MenuItem value="3">
                    <ListItemText>Three</ListItemText>
                </MenuItem>
                <MenuItem value="4">
                    <ListItemText>Four</ListItemText>
                </MenuItem>
            </Select>
        </MuiThemeProvider>
    );
};

export default MySelect;
Run Code Online (Sandbox Code Playgroud)

不幸的是, …

mui reactjs material-ui

2
推荐指数
1
解决办法
1万
查看次数