LaTeX中有阵列吗?我不是指排版数组的方法.我的意思是将数组作为LaTeX/TeX中的数据结构作为"编程语言".我需要在一个数组中存储一些vbox-es或hbox-es.它可能类似于"一系列宏".
更多细节:我有一个应该排版歌曲的环境.我需要将一些歌曲的段落作为参数存储到我的macro\songparagraph中(因此我不会对它们进行排版,只需存储这些段落).由于我不知道在一首特定歌曲中可以有多少段落,我需要一个阵列.当环境关闭时,所有段落都将被排版 - 但是它们将首先被测量并且将计算每个段落的最佳位置(例如,一些段落可以放在另一列的两列中以使歌曲看起来更紧凑,节省一些空间).
任何想法都会受到欢迎.如果您了解LaTeX中的数组,请发布一些基本文档,教程或仅说明基本命令的链接.
我一直在研究使用JavaFX的软件,我有一个愚蠢但令人担忧的问题.
在代码的某些部分,我有一个HBox,并且在其中有三个项目:a image,a label和a VBox.
问题是,我想有image左对齐,就是旁边的左边距window,并VBox靠右对齐,就是旁边的右边界window,我不知道如何去做吧.
我试过用VBox.setAlignment(Pos.RIGHT_CENTER),但是没用.
我有一个VBox,里面有4个HBox.第二级HBox最初是隐藏的.单击标签"显示更多选项"时,将显示第二级HBox.现在我将"二级HBOx"占用的空间置空,"搜索"按钮位于空间下方.
我的第一个问题是,有没有办法定位搜索按钮,使空间不存在,点击"显示更多选项"标签后,会出现"二级HBox"?
第二个问题是,我可以将搜索按钮放在页面的中心.是否有任何方法可以将VBox的HBox内容集中在一起?
这是我的代码:
<mx:Form x="47" y="219" width="80%" >
<mx:VBox id="searchBox" >
<mx:HBox id="searchTitle" width="100%" height="20" backgroundColor="#2680D5">
<mx:Label text="Search Criteria" paddingRight="250" width="654.6212" height="18.030302"/>
<mx:Label text="show more options" id="moreOption" click="showOption(event)" width="127.045456" height="21.969696"/>
</mx:HBox>
<mx:HBox id="firstLevel" paddingBottom="10" paddingTop="15" >
<mx:Label text="Task Name" paddingLeft="20"/>
<mx:TextInput id="searchTaskName" paddingLeft="10" />
<mx:Label text="Item Code" paddingLeft="30"/>
<mx:TextInput id="searchItemCode" paddingLeft="10"/>
<mx:Label text="Task Type" paddingLeft="30"/>
<mx:ComboBox id="searchTaskType" paddingLeft="10"/>
</mx:HBox>
<mx:HBox id="secondLevel" visible="false" paddingTop="5">
<mx:Label text="Task ID" paddingLeft="20" />
<mx:TextInput id="searchTaskId" paddingLeft="10"/>
<mx:Label text="Project Won" paddingLeft="30"/>
<mx:ComboBox id="searchWon" paddingLeft="10"/>
</mx:HBox> …Run Code Online (Sandbox Code Playgroud) 我无法让我的HBox中的Elements增长,所以我从java2s.com下载了以下示例代码.它是一个最小的不工作的例子:
package fxtest;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Priority;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class Fxtest extends Application {
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("");
Group root = new Group();
Scene scene = new Scene(root, 600, 250, Color.WHITE);
HBox hbox = new HBox();
TextField field = new TextField();
HBox.setHgrow(field, Priority.ALWAYS);
hbox.getChildren().addAll(new Label("Search:"), field, new Button("Go"));
root.getChildren().add(hbox);
primaryStage.setScene(scene);
primaryStage.show();
} …Run Code Online (Sandbox Code Playgroud) 是否可以管理HBox中的子元素,以便所有子元素的宽度总和等于HBox的宽度?
因此元素填充HBox并且不留空间.
子元素的高度默认是HBox的高度,那么宽度怎么样?我不想计算程序中的宽度.如果布局自动执行此操作会更好,因此无需进行计算.
我有一个 JavaFx 应用程序,为了获得特定的布局,我使用了一些 H- 和 VBox。在一个 HBox 中,我有一个文本字段和一个按钮,我希望它们占据此 HBox 中所有可能的空间。
vboxRight = new VBox(); //This is the right VBox
vboxRight.setSpacing(10);
//This HBox represents the first "Line"
hboxLine = new HBox();
hboxLine.setSpacing(10);
hboxLine.setMinHeight(30);
//Textbox
txtField = new TextField();
txtField.setMinHeight(30);
//Button
btn = new Button("Search");
btn.setMinHeight(30);
btn.setOnAction(this);
hboxLine.getChildren().addAll(txtField, btn);
vboxRight.getChildren().addAll(hboxLine);
Run Code Online (Sandbox Code Playgroud)
有什么办法可以做到这一点吗?也许用CSS?
有没有办法从Action Script设置horizontalAlign而不是从mxml?
我只是真的需要HBox的答案,但想想如果我们在这里得到一个好的答案,它会帮助任何人试图用VBox做类似的事情.在actionscript和MXML中都知道这一点会很高兴.
所以我有一个HBox,我希望从左边对齐一些文本,从右边对齐一些无线电.像这样:
___________________________________________________
| |
|Text Yes () No() |
|___________________________________________________|
Run Code Online (Sandbox Code Playgroud)
我目前这样做是通过在文本和无线电之间放置一个宽度为100%的隐形盒子,就像这样
_____ __________________________________ ________________
| | | |
|Text | invisible box percentWidth=100; | Yes () No() |
|_____|__________________________________|________________|
Run Code Online (Sandbox Code Playgroud)
我宁愿让他们自己的HBox中的无线电正确对齐如下:
_____ ________________________________________________________
| | |
|Text | Yes () No() |
|_____|________________________________________________________|
Run Code Online (Sandbox Code Playgroud)
我已经看到一些帖子谈论了一个horizontalAlign属性,但我没有在文档中看到它.
那我该怎么做呢?
谢谢〜迈克
我经常使用这个网站,以解决我在Python编程时遇到的小问题.这一次,我无法找到适合我情况的合适解决方案.所以,这是我的问题:
我想动态地向gtk.VBox小部件添加条目.问题是它不能按我想要的方式工作.我只是有一个按钮,其动作是向VBox添加一个额外的小部件.不幸的是,小部件没有出现在窗口上.我想,我必须添加类似重绘函数调用的东西,但我没有找到类似的东西.这是一个示例代码,显示了我的问题:
import gtk
class DynamicVbox:
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("destroy", self.close_application)
self.window.set_size_request(400,320)
#a hBox to put the button and the dynamic vBox
hBox = gtk.HBox(False, 0)
addButton = gtk.Button("add checkbox")
addButton.connect("clicked", self.AddCheckButton)
self.vBox = gtk.VBox(False, 0)
self.vBox.pack_start(gtk.CheckButton("CheckButton"), True, True, 1)
hBox.pack_start(self.vBox, True, True, 5)
hBox.pack_end(addButton, False, False, 5)
self.window.add(hBox)
#start gtk
self.window.show_all()
gtk.main()
def AddCheckButton(self, button):
self.vBox.pack_start(gtk.CheckButton("CheckButton"), True, True, 1)
print "adding checkbox..."
def close_application(self, widget):
gtk.main_quit()
# run it
a = DynamicVbox()
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助.提前致谢.
这个简单的示例创建了一个区域,其中包含2个标记为红色的矩形区域。我想使用VBoxmargin方法将正确的区域向右推n个像素,但是什么也没有发生。为什么在这个例子中保证金不起作用?它可以在场景生成器中工作。
public class LayoutContainerTest extends Application {
@Override
public void start(Stage primaryStage) {
VBox areaLeft = new VBox();
areaLeft.setStyle("-fx-background-color: red;");
areaLeft.setPrefSize(100, 200);
VBox areaMiddle = new VBox();
areaMiddle.setStyle("-fx-background-color: red;");
areaMiddle.setPrefSize(100, 200);
VBox areaRight = new VBox();
areaRight.setStyle("-fx-background-color: red;");
areaRight.setPrefSize(100, 200);
VBox.setMargin(areaRight, new Insets(0,0,0,50));
HBox root = new HBox(areaLeft,areaMiddle,areaRight);
root.setSpacing(30);
Scene scene = new Scene(root, 600, 250);
primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
} …Run Code Online (Sandbox Code Playgroud) hbox ×10
javafx ×5
apache-flex ×3
java ×3
vbox ×3
alignment ×2
actionscript ×1
arrays ×1
center-align ×1
containers ×1
css ×1
flex3 ×1
latex ×1
layout ×1
margin ×1
netbeans ×1
pygtk ×1
python ×1
tex ×1
width ×1