我正在尝试使用WxErlang在Elixir中使用拆分窗口。
我基本上是在做与来自splitterWindow的:wx.demo示例完全相同的事情,但是:wxSplitterWindow.splitVertically函数返回false (不工作),并且我不知道wny。
下面是代码:
defmodule SplitWindow do
import Bitwise
import :wx_const # A custom Erlang module that imports wx constants
def start do
wx = :wx.new
window = :wxFrame.new(wx, wxID_ANY, 'SplitWindow')
:wxFrame.center(window)
panel = :wxPanel.new(window)
sizer = :wxBoxSizer.new(wxVERTICAL)
splitter = :wxSplitterWindow.new(panel)
text_edit = :wxTextCtrl.new(panel, wxID_ANY, value: 'Text Box',
style: wxDEFAULT ||| wxTE_MULTILINE)
text_edit2 = :wxTextCtrl.new(panel, wxID_ANY, value: 'Text Box2',
style: wxDEFAULT ||| wxTE_MULTILINE)
##### This line below is where it fails #####
IO.puts :wxSplitterWindow.splitVertically(splitter, text_edit, text_edit2)
:wxSplitterWindow.setSashGravity(splitter, 0.5)
:wxSplitterWindow.setMinimumPaneSize(splitter, 50)
:wxSizer.add(sizer, splitter, flag: wxEXPAND, proportion: 1)
:wxPanel.setSizer(panel, sizer)
:wxFrame.show(window)
end
end IO.puts将输出: false
我不会再犯其他错误了。
下面是程序运行的屏幕截图:http://screencast.com/t/g0sG89ECi
有人知道我做错了什么吗?
谢谢。
发布于 2014-12-08 22:06:06
我对wxWidgets一无所知,但在本地(OS )尝试了一下,它对我来说也是一种突破。
在查看代码时,我本能地尝试将两个编辑控件的父控件设置为拆分器,而不是面板,并为我修复了它:
text_edit = :wxTextCtrl.new(splitter, -1, value: 'Text Box', style: 70 ||| 32)
text_edit2 = :wxTextCtrl.new(splitter, -1, value: 'Text Box2', style: 70 ||| 32)https://stackoverflow.com/questions/27346799
复制相似问题