相当基本的问题在这里.
基本上我有这样的代码:
public SuperPanel() {
setLayout(new BorderLayout());
add(panel1(), BorderLayout.NORTH);
add(panel2(), BorderLayout.CENTER);
add(panel3(), BorderLayout.SOUTH);
}
Run Code Online (Sandbox Code Playgroud)
这一切都运作良好.问题是我还有另一部分要添加到中心.add(newPanel(), BorderLayout.CENTER)显然,只是使用不起作用.但你可以在JPanels中添加JPanels,对吗?
所以我做了以下改动:
public SuperPanel() {
setLayout(new BorderLayout());
add(panel1(), BorderLayout.NORTH);
add(supersweetpanel(), BorderLayout.CENTER);
add(panel3(), BorderLayout.SOUTH);
}
Run Code Online (Sandbox Code Playgroud)
随着supersweetpanel():
public JPanel supersweetpanel() {
JPanel sswp = new JPanel();
setLayout(new BorderLayout());
add(panel2(), BorderLayout.NORTH);
return sswp;
}
Run Code Online (Sandbox Code Playgroud)
现在它覆盖了panel1!如果我将它设置为其他任何东西(CENTER,SOUTH有什么东西),前两个面板完全消失.非常感谢帮助.
我有一个ListBox使用以下DataTemplate显示项目:
<DataTemplate x:Key="PersonTemplate" DataType="{x:Type DAL:ResultItem}" >
<StackPanel Width="280" >
<TextBox BorderThickness="0" IsReadOnly="True" Background="Transparent" Text="{Binding FullName1, Mode=OneWay}"/>
...
</StackPanel>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
我使用透明,只读,无边框TextBox而不是TextBlock,因为我希望用户能够选择要复制的文本.我应该采用不同的方式吗?我怎么写这个,这样当用户点击TextBox时,ListBoxItem也会被选中?
谢谢!
什么是在vb2005中完成表单上所有控件的最佳方法?我正在编写一个程序,可以根据表单上的信息编辑一串字节.每个控件都使用它修改的十六进制地址和值来标记,即使嵌入在其他控件中的控件,通过表单上所有控件的最佳方法是什么?
我需要运行一堆我在服务器上编写的ruby脚本,我没有sudo访问权限.
在我自己的机器上,我使用'sudo gem install ..'安装了一堆宝石并在我的代码中使用它们.
有没有任何机制可以让我使用这些宝石而不正式安装它们在远程机器上?
我最近购买了一台笔记本电脑进行一些异地开发,以及我在上下班途中的一些工作.
我习惯于在XP上开发,但笔记本电脑捆绑了一个版本的Vista家庭高级版(不幸的是我在这里没有发言权).我尝试在其上安装XP,但由于XP安装没有附带SATA驱动程序,因此失败了.
我知道你可以使用nlite创建XP安装程序的'滑动版',并且可能会这样做,但是根据我的研究,这对许多人来说是个问题,缺少驱动程序,蓝屏等.
我正在尝试决定是否采用这个选项,或者只是接受我的Vista安装,所以我想了解我在开发方面会失去什么,例如IIS限制(卡西尼是一个可接受的替代品?).我将限制使用哪些版本的SQL.在.NET开发方面我还应该注意什么,或者,对于我需要的,Home Premium不是一个有效的选择?
编辑
为了回答为什么我要回到XP安装,我想消极的Vista出版社,以及我对我操作系统名称中的'Home'这个词的天生势利.:).
不过,如果我不是一个开发人员,我会非常乐意继续坚持下去,因为我宁可惹上我所拥有的东西而不是忍受试图破解目前正在运行的XP的痛苦系统.
感谢您的回答,并且非常乐意听到更多
我在一个多线程应用程序中看到了一些奇怪的行为,我写了这个行为并没有在多个核心上很好地扩展.
以下代码说明了我看到的行为.堆密集型操作似乎不会跨多个核心扩展,而是看起来速度变慢.即使用单个线程会更快.
class Program
{
public static Data _threadOneData = new Data();
public static Data _threadTwoData = new Data();
public static Data _threadThreeData = new Data();
public static Data _threadFourData = new Data();
static void Main(string[] args)
{
// Do heap intensive tests
var start = DateTime.Now;
RunOneThread(WorkerUsingHeap);
var finish = DateTime.Now;
var timeLapse = finish - start;
Console.WriteLine("One thread using heap: " + timeLapse);
start = DateTime.Now;
RunFourThreads(WorkerUsingHeap);
finish = DateTime.Now;
timeLapse = finish - start;
Console.WriteLine("Four threads using …Run Code Online (Sandbox Code Playgroud) 我该怎么做?原因是我想尝试一些pygame,但我目前安装了python 3并且一直在学习.我也有兴趣尝试wxpython或类似的东西,但我还没有看过它们的兼容性.
编辑:: im在Windows Vista 64位上
我们有几个图像和PDF文档可通过我们的网站获得.这些图像和文档存储在源代码管理中,并在部署时复制内容.我们正在考虑创建一个单独的图像服务器来放置我们的库存图像和PDF文档 - 从而显着减少我们的部署包的大部分.
有没有人有这种方法的经验?
我想知道任何"陷阱" - 比如XSS问题和/或浏览器问题从备用子域提供内容?
我正在使用Visual Studio Express 2008在C#中测试一些代码:
delegate void Hm(int k);
static void Main(string[] args)
{
char[] m = new char[10];
m[0] = 'H'; m[5] = 'M';
m[1] = 'o'; m[6] = 'u';
m[2] = 'l'; m[7] = 'n';
m[3] = 'a'; m[8] = 'd';
m[4] = ' '; m[9] = 'o';
unsafe { fixed (char* p = m) { Hm H = (k) => recurd(k, p); H(0); } }
Console.ReadLine();
}
static unsafe int recurd(int i, char* p)
{
Console.WriteLine(p[i]);
if (i …Run Code Online (Sandbox Code Playgroud) DataSet和DataTable都实现了IDisposable,因此,通过传统的最佳实践,我应该调用它们的Dispose()方法.
但是,从我到目前为止所读到的,DataSet和DataTable实际上并没有任何非托管资源,因此Dispose()实际上并没有做太多.
另外,我不能只使用,using(DataSet myDataSet...)因为DataSet有一组DataTables.
所以,为了安全起见,我需要遍历myDataSet.Tables,处理每个DataTable,然后处理DataSet.
那么,在我的所有DataSet和DataTables上调用Dispose()是否值得麻烦?
附录:
对于那些认为应该处理DataSet的人:通常,处理的模式是使用usingor try..finally,因为你想保证将调用Dispose().
然而,这对于一个集合来说真的很快.例如,如果对Dispose()的一个调用抛出异常,你会怎么做?你吞下它(这是"坏"),以便你可以继续处理下一个元素?
或者,你是否建议我只调用myDataSet.Dispose(),而忘记在myDataSet.Tables中处理DataTables?