我的主布局中有一个 GridView,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<GridView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:horizontalSpacing="1dp"
android:stretchMode="columnWidth"
android:verticalSpacing="1dp" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
产生这样的网格

每个单元格的内容是这样的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/btn_measurement" >
<Button
android:id="@+id/numerical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="---" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但我希望第 4 列是其他列的三分之一,但我不能。
我检查了链接:
具有不同列大小的GridView和Android GridView 列拉伸
但他们没有帮助。:(
如果您认为我需要完全更改我的解决方案,请比仅提供一般线索更准确。谢谢
我尝试在使用HTMLTable时调整NameWidth但没有成功。
考虑这些设置(# = 注释):
<IfModule mod_autoindex.c>
IndexOptions FancyIndexing
IndexOptions HTMLTable
IndexOptions IconsAreLinks
IndexOptions SuppressDescription
IndexOptions SuppressLastModified
IndexOptions SuppressColumnSorting
#IndexOptions IconWidth=20
#IndexOptions IconHeight=20
IndexOptions NameWidth=*
IndexOrderDefault Descending Name
HeaderName header.html
ReadmeName footer.html
</ifModule>
Run Code Online (Sandbox Code Playgroud)
通过上述设置,浏览器内的目录列表显示“名称”列的宽度几乎不比最长文件名的宽度宽。文件名不会被截断,但最长文件名的右边缘距下一列仅 1 个字符。 我希望使“名称”列比最长的文件名更宽,因此文件名的右侧与右侧的下一列之间有更多的空格分隔。 我可以通过删除或注释掉“IndexOptions HTMLTable”来实现这一点(水平添加额外的空格)。但是禁用“HTMLTable”会导致图标不再与其关联的文件名垂直居中。是的,我希望保留这些图标。更改 IconWidth 和 IconHeight 并不能解决垂直居中问题。我使用 header.html 和 footer.html 添加页面标题和返回链接,但这些文件不会影响目录列表内容。
我该如何解决这个问题?
谢谢。
我有一个包含4列的网格,并希望在第二列中放置一个文本框并将其跨越到最后一列.我怎样才能使文本框宽度与最后3列一样宽?
我尝试过Borders,但它没有用.
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox Grid.Column="1" Grid.ColumnSpan="3" />
</Grid>
Run Code Online (Sandbox Code Playgroud) 我们正在使用各种工具生成很长的Excel工作表,必须对其进行检查并将其用作工作流中的后续输入。一些单元格对于包含的文本而言太小的问题。因此,正在阅读工作表的人员和程序将看不到相同的数据。
当Excel无法正确调整行高时,对于包含自动换行文本的合并单元格来说通常是这样。但是,还有其他情况:例如,当某些列的宽度被显式设置时,这对于长值是不够的。
|Group|Def1 |Subgroup|Definition| Id |Data |Comment |
|-------------------------------------------------------|
| G1 | | G1-1 |Important |G1-1-1|... | |
| |Long | |about G1-1|G1-1-2|.....|........ |
| |text |-------------------------------------------|
| |about| G1-2 |Another |G1-2-1|... | |
| |group| |important |G1-2-2|... |long comme|
| |G1. | |text about|G1-2-3| | |
|-------------------------------------------------------|
Run Code Online (Sandbox Code Playgroud)
此处,“定义”和“注释”中的某些单元格不完全可见。是否有任何方法以编程方式找到这种细胞?
我的应用程序由几个JTables组成.JXTables.目标是存储列宽并在启动时重新加载它们.
但是下面的代码对表的列宽没有任何改变:
tblTasks.getColumn(1).setWidth(36);
Run Code Online (Sandbox Code Playgroud)
而且这个没有做任何事情:
tblTasks.getColumn(1).setPreferredWidth(36);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
我知道columndefinition在XAML中是如何工作的,但我想做的事情并不知道如何.
我想要4列这样的:
<Grid.ColumnDefinitions>
<ColumnDefinition Width="110" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="80" />
<ColumnDefinition Width="80" />
</Grid.ColumnDefinitions>
Run Code Online (Sandbox Code Playgroud)
第二列包含文本,问题是当该文本太短时,第二列不占用所有可用空间.它会自动变小,每行都会变小.我可以在textblock中使用此代码:
MinWidth="2000"
Run Code Online (Sandbox Code Playgroud)
但这并不是一个好方法,因为当屏幕很大时这个数字可能太低了.
这里包含4列的整个列表视图:
<ListView Grid.Row="1" Grid.ColumnSpan="4" ItemsSource="{Binding blabla}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="110" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="80" />
<ColumnDefinition Width="80" />
</Grid.ColumnDefinitions>
<Image Height="110" Width="110" Grid.Column="0" Source="{Binding blabla}" HorizontalAlignment="Stretch" />
<TextBlock Text="{Binding blabla}" TextWrapping="Wrap" Margin="5,0,0,0" Grid.Column="1" FontSize="16" HorizontalAlignment="Stretch" TextAlignment="Left" FlowDirection="LeftToRight" MinWidth="2000" VerticalAlignment="Center" ScrollViewer.HorizontalScrollBarVisibility="Disabled" FontStretch="UltraCondensed"/>
<TextBlock Grid.Column="2" TextWrapping="Wrap" Foreground="Black" Margin="5,0,0,0" HorizontalAlignment="Stretch" VerticalAlignment="Center"/>
<Image Source="{Binding blabla, …Run Code Online (Sandbox Code Playgroud) 我正在Access数据库中生成VBA子例程,该例程会生成Excel文件,但是当我使用以下方法修改列宽时:
Range("A:A").ColumnWidth = ...
Run Code Online (Sandbox Code Playgroud)
根据测量单位产生混合结果。Excel在选项中设置的默认度量是厘米。我尝试输入以点和厘米为单位的值,但是结果太宽或太小(请参见下文):
Range("A:A").ColumnWidth = 3.07 'In Centimeters - Too small
Range("A:A").ColumnWidth = 87.02 'In Points - Too big
Run Code Online (Sandbox Code Playgroud)
根据文档
Range.ColumnWidth
,以点为计量单位(宽度为0)进行设置。无论我输入什么值,结果都不一样。
我有一个选中列表框,其属性 MultiColumn 设置为 true。我用两行显示控件。
有没有办法自动调整每组列的列宽(以某种方式,每组列的宽度将显示其中的所有文本)?或者只能为所有列设置相同的宽度?
我正在尝试按照此链接中的说明设置标题大小或列宽。
问题是:
table.horizontalHeader().setStretchLastSection(True) 可以,但不是最佳的
self.produktKaufTb.setColumnWidth(1, 80)
self.produktKaufTb.horizontalHeader().setResizeMode(0, QHeaderView.Stretch)
Run Code Online (Sandbox Code Playgroud)
返回“AttributeError:'QHeaderView' 对象没有属性'setResizeMode'”
其他两个选项
.horizontalHeader().setSectionResizeMode(1)
Run Code Online (Sandbox Code Playgroud)
或者
.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
Run Code Online (Sandbox Code Playgroud)
不允许用鼠标调整列的大小
如何在 PyQt5 中设置列宽?
我有一列有两个groupbox,每个都有一个GridLayout.
这是我的代码:
Window {
visible: true
width: 500
height: 480
title: qsTr("GridLayoutTest")
Column
{
GroupBox
{
contentWidth: gl1_.width
contentHeight: gl1_.height
GridLayout
{
id: gl1_
columns: 2
width: 200
Rectangle { Layout.preferredWidth: 60; Layout.preferredHeight: 25; color: "purple"; }
Rectangle { Layout.preferredWidth: 45; Layout.preferredHeight: 25; color: "purple"; }
Rectangle { Layout.preferredWidth: 50; Layout.preferredHeight: 25; color: "purple"; }
Rectangle { Layout.preferredWidth: 45; Layout.preferredHeight: 25; color: "purple"; }
}
}
GroupBox
{
contentWidth: gl2_.width
contentHeight: gl2_.height
GridLayout
{
id: gl2_ …Run Code Online (Sandbox Code Playgroud)