我在java中构建了一个小型GUI游戏,在某些时候我正在使用glassPane暂时阻止所有鼠标输入.我之前使用过glassPane没有任何问题,但这次它不会阻止鼠标输入.因此,当启用glassPane时,我仍然可以按下驻留在contentPane上的按钮,我确定它已启用,因为我可以看到我在其上绘制的内容.
这是一段显示问题的可运行代码:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class GuiGame {
private JPanel contentPane;
private JButton button;
private JFrame frame;
private JPanel glassPane;
private Dimension screenSize;
public static void main(String[] args) {
GuiGame gui = new GuiGame();
gui.createGUI();
}
public void createGUI()
{
frame = new JFrame("BadGuiGame!");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
screenSize = Toolkit.getDefaultToolkit().getScreenSize();
contentPane = new JPanel();
contentPane.setPreferredSize(new Dimension(400, 400));
contentPane.setBackground(Color.WHITE);
contentPane.setLayout(null);
frame.setContentPane(contentPane);
frame.pack();
glassPane = new JPanel();
glassPane.setOpaque(false);
glassPane.setLayout(null);
JLabel glassLabel …Run Code Online (Sandbox Code Playgroud) 当我在页面顶部添加声明时,我的flexbox布局将崩溃,当我删除doctype时,它按预期工作.chrome/firefox/ie出现问题.
.grid {
height: 100%;
display: flex;
flex-flow: column nowrap;
flex-grow: 1;
border: 1px solid black;
}
.row {
width: 100%;
display: flex;
flex-flow: row nowrap;
flex-grow: 1;
}
.cell {
flex-grow: 1;
border: 1px solid black;
}Run Code Online (Sandbox Code Playgroud)
<div class="grid">
<div class="row">
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
</div>
<div class="row">
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
https://plnkr.co/edit/jKklf2zeYBjOgTsSQnvr
应该是什么样的:
NODE_PATH 环境变量可用于指定备用模块文件夹。这对于防止长相对路径很有用。想象一下以下文件夹结构:
/index.ts
/src/
---/folder1/
------/service.ts
---/folder2/
------/util.ts
Run Code Online (Sandbox Code Playgroud)
如果我想在 util from folder2 中使用来自 folder1 的服务,我需要做一个import { ServiceName } from "../folder1/service". 对于深度嵌套的文件夹,这可能会变得乏味。
当您将 NODE_PATH 环境变量设置为 './src' 时,您可以从"folder1/service". 如您所见,没有烦人的相对路径。
我已经用一个普通的 javascript 项目对此进行了测试,效果很好。但是当我使用打字稿时,它会给出一个编译错误,告诉它找不到指定的模块,因为它似乎没有使用 NODE_PATH 值。
所以问题是,如何强制打字稿编译器使用 NODE_PATH 值?
我正在使用LongListSelector,右侧的滚动条增加了一些空白空间,这使设计变得混乱,所以我想隐藏它.我尝试过以下方法:
ScrollBar sb = ((FrameworkElement)VisualTreeHelper.GetChild(FileList, 0))
.FindName("VerticalScrollBar") as ScrollBar;
sb.Width = 0;
Run Code Online (Sandbox Code Playgroud)
但是这不适用于wp8,我可以使宽度更大但不小.它具有ScrollViewer.VerticalScrollBarVisibility属性,但将其更改为Hidden或Disabled不会执行任何操作.
/编辑:
这似乎有效:
var sb = ((FrameworkElement) VisualTreeHelper.GetChild(FileList, 0))
.FindName("VerticalScrollBar") as ScrollBar;
sb.Margin = new Thickness(-10, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)
但如果有人有一个更清洁的方法,我仍然希望听到它.