我正在尝试设置一个带有多个按钮的网页,这些按钮会转到多个弹出窗口。代码是这样的;
import Data.Maybe (mapMaybe)
dropEvery str n = mapMaybe (\(char, indx) -> if indx `mod` n /= 0 then Just(char) else Nothing) (zip str [1..])
此代码仅根据名称"打开"文件。作为PopUp大小的按钮: http://s558.photobucket.com/user/magpiejay/media/button_zpskgbfgwtd.jpg.html
我打算做的是:
答案 0 :(得分:0)
- 具有适当大小的按钮:
您可以使用setHeight("5px")
设置CSS样式中的大小,而不是使用.setStyleName("fileAuthors");
设置按钮高度和宽度。只需将width: 50px;
and height:20px;
添加到您的fileAuthors class
如果您不添加任何大小,按钮将具有根据您在其上设置的文本的大小。
- 查看所有按钮,而不仅仅是第一个添加的小部件:
PopupPanel
扩展了SimplePanel
,只允许添加一个Widget。
而不是直接将所有按钮添加到PopupPanel
首先添加容器,然后添加所有按钮此容器。如果您按照示例中所示执行此操作,则中心方法也应该起作用。此外,您不必将其设置为可见,也不要调用show()
,因为所有这些都是在center()
方法中完成的。(也许请阅读Javadoc)
示例:
organizeFiles.addClickHandler(new ClickHandler()
{
@Override
public void onClick(ClickEvent event)
{
// create a container
FlowPanel container = new FlowPanel();
Button filesNames = new Button("Files according to names");
Button fileTypes = new Button("Files according to their file types");
Button fileAuthors = new Button("Files according to their authors");
Button fileAlbums = new Button("Files according to their albums");
filesNames.setStyleName("filesNames");
filesNames.setSize("50px", "20px");
fileTypes.setStyleName("fileTypes");
fileTypes.setSize("50px", "20px");
fileAuthors.setStyleName("fileAuthors");
fileAuthors.setSize("50px", "20px");
fileAlbums.setStyleName("fileAlbums");
fileAlbums.setSize("50px", "20px");
jal2.addStyleName("popup");
jal2.setSize("400px", "400px");
container.add(filesNames);
container.add(fileTypes);
container.add(fileAuthors);
container.add(fileAlbums);
//set only the widget into the popuppanel
jal2.setWidget(container);
jal2.center();
}
})
;
答案 1 :(得分:0)
问题已解决。它发生了,因为我没有为所有弹出窗口添加不同的样式名称,并将这些样式名称添加到CSS。 http://s558.photobucket.com/user/magpiejay/media/Balksz4_zpsestll7fs.jpg.html