我目前正在尝试实现一个Swing组件,它继承自JLabel,它应该简单地表示一个可以垂直定向的标签。以此开头:publicclassRotatedLabelextendsJLabel{publicenumDirection{HORIZONTAL,VERTICAL_UP,VERTICAL_DOWN}privateDirectiondirection;我认为改变getPreferredSize()的结果是个好主意:@OverridepublicDimensiongetPreferredSize(){//swapsizeforverticalalignmentsswitch(getDirec
我总是在这个网站上看到覆盖getPreferredSize()而不是使用setPreferredSize()的建议,如这些先前线程中所示。UseofoverridinggetPreferredSize()insteadofusingsetPreferredSize()forfixedsizeComponentsShouldIavoidtheuseofset(Preferred|Maximum|Minimum)SizemethodsinJavaSwing?OverridingsetPreferredSize()andgetPreferredSize()看这个例子:publicclassM
我在这里读了一些帖子,我开始了解为什么有些人会这样做@OverridepublicDimensiongetPreferredSize(){returnnewDimension(500,500);}代替setPreferredSize(newDimension(500,500));第二个不是更好吗,因为它只创建一个Dimension对象,而第一个可能创建多个(即使它没有那么浪费内存)?还是我错了?有区别吗? 最佳答案 一个很大的区别是该值如何随时间变化,因此您选择的值应该取决于您要对代码执行的操作。如果您只是在代码中调用setPref