- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
...
<g:VerticalPanel styleName="{style.mainVerticalPanel}">
<g:SplitLayoutPanel>
<g:north size="700">
<g:VerticalPanel>
<g:ScrollPanel styleName="{style.conversationPanelContainer}">
<g:FlexTable ui:field="conversationPanel" styleName="{style.conversationPanel}"></g:FlexTable>
</g:ScrollPanel>
<g:HorizontalPanel styleName="{style.messageTextAndSendPanel}">
<g:TextBox ui:field="messageText" styleName="{style.messageText}"></g:TextBox><g:Button ui:field="sendButton">Send</g:Button>
</g:HorizontalPanel>
</g:VerticalPanel>
</g:north>
<g:south size="300">
<g:button>TestButton</g:button>
</g:south>
</g:SplitLayoutPanel>
</g:VerticalPanel>
...
这看起来有什么问题吗?我想做的就是制作一个简单的拆分面板,但每当我运行它时,我得到的只是一个空白页。没有任何 SplitPanel
东西,它工作正常。 DockLayoutPanel
也是如此。
最佳答案
好的,让它正常工作(请参阅此答案的旧版本以了解之前的尝试;))。
我的解决方案基于 Mail example .工作代码:
public class SplitTest implements EntryPoint {
private static TestUiBinder uiBinder = GWT.create(TestUiBinder.class);
interface TestUiBinder extends UiBinder<SplitLayoutPanel, SplitTest> {
}
/**
* This is the entry point method.
*/
public void onModuleLoad() {
SplitLayoutPanel outer = uiBinder.createAndBindUi(this);
RootLayoutPanel.get().add(outer);
}
}
UiBinder *.ui.xml:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">
<ui:style>
.conversationPanelContainer, .conversationPanel, .messageTextAndSendPanel, .messageText {
font-weight: bold;
}
</ui:style>
<g:SplitLayoutPanel>
<g:north size="700">
<g:VerticalPanel>
<g:ScrollPanel styleName="{style.conversationPanelContainer}">
<g:FlexTable ui:field="conversationPanel" styleName="{style.conversationPanel}"></g:FlexTable>
</g:ScrollPanel>
<g:HorizontalPanel styleName="{style.messageTextAndSendPanel}">
<g:TextBox ui:field="messageText" styleName="{style.messageText}"></g:TextBox><g:Button ui:field="sendButton">Send</g:Button>
</g:HorizontalPanel>
</g:VerticalPanel>
</g:north>
<g:south size="300">
<g:Button>TestButton</g:Button>
</g:south>
</g:SplitLayoutPanel>
</ui:UiBinder>
注意一些事情:
<g:Button>
, 不是 <g:button>
(区分大小写)RootLayoutPanel
而不是通常的 RootPanel
LayoutPanel
还是有点困惑小东西 - 在 Mail example他们使用 SplitLayoutPanel
嵌套在 DockLayoutPanel
中, 但只有 DockLayoutPanel
明确添加到 RootLayoutPanel
- 我是否理解 SplitLayoutPanel
自动也被添加(以便它可以接收调整大小事件等)?嵌套在主 LayoutPanel 中的其他一些小部件怎么样 - 它们是否必须显式添加到 RootLayoutPanel
中?或者只有当它们是那个 Widget/Composite 的根时,或者那是不可能的?我真的没有时间在 atm 上进一步研究 - 我会把它留给其他人做作业 ;)顺便说一句:我已经在 Quirks 模式和标准模式下检查了这段代码 - 我看不出有什么不同,两者都可以工作 O_o(不过,这是对 SplitLayoutPanel
的简单使用 - 更复杂的示例可能会导致Quirks 模式和/或渲染错误中的一些奇怪行为)
关于java - 无法让 SplitLayoutPanel 工作 - GWT + UIBinder 快把我逼疯了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2495457/
我有一个 TabPanel,其中包含一个 SplitLayoutPanel,里面有两个 ScrollPanel,一个在中心,一个在南边码头。当我调整浏览器窗口大小时,我的 SplitLayoutPan
在创建 SplitLayoutPanel 后,我需要调整位于 SplitLayoutPanel “西”的小部件的大小。我尝试过类似的事情: SplitLayoutPanel splitLayoutPa
我有同样的问题,如 here . 有没有办法重写 onResize 方法并在 uibinder 中使用它? SplitLayoutPanel mainPanel = new SplitLayoutPa
我在使用 UiBinder 显示 SplitLayoutPanel 时遇到一些问题。页面加载时,SplitLayoutPanel 似乎是隐藏的。谢谢 这是我的代码:
我知道您可以使用文档中列出的默认样式更改拆分器的样式: .gwt-SplitLayoutPanel .gwt-SplitLayoutPanel-HDragger { horizontal dragge
我有一个 SplitLayoutPanel,其中子组件之一是 FlowPanel。我扩展了 FlowPanel 以创建一个实现 ProvidesResize 和 RequiresResize 的 Re
我有一个 GWT 代码,但结果是空页。为什么? public void onModuleLoad() { leftPanelSetup(); rightPanelSetup();
如何将 SplitLayoutPanel 与 UIBinder 结合使用?我尝试了很多不同的东西,但没有一个能正常工作。 最佳答案 您会发现 SplitLayoutPanel 的工作方式与 DockL
我是 GWT 的新手,正在努力使用它来浏览我的第一个网页。 我创建了 2 个复合小部件 - ListWidget 和 MaintenanceWidget。当我将它们都添加到 FlowPanel 时,它
谁能告诉我如何在 SplitLayoutPanel 的 UIBinder 模板中更改拖动器的样式。 这是我的 MainMenu.ui.xml:
...
我是一名优秀的程序员,十分优秀!