任务:
保留拇指指甲的垂直列表.拇指指甲必须按窗口尺寸缩放.拇指指甲包含在div中,其尺寸使用vw,vh给出.在每次调整大小时,Javascript函数会重新计算所有拇指指甲的宽度和高度,以便在div的可见区域中出现固定数量的指甲,并尽可能大.为了保持拇指指甲的垂直间距不变,可见拇指指甲的高度相加,增加一个因子并分配到div的高度.
问题:
当使窗户非常狭窄时,拇指指甲之间的垂直空间越来越大.为hFit和hTotal计算的值(请参阅下面的Javascript代码)似乎不正确,导致不需要的叠加或拇指指甲的垂直间距过大.
细节:
整个布局如下:
最外面的div(.content-area)控制整个控件的垂直对齐(居中)..content-area(.content-control)的子节点控制实际列表(.content-data)的布局以及将出现在该列表左侧的关闭按钮(.close-btn-area).
代码:
CSS:
.content-area
{
position: absolute;
left: 2vw;
top: 5vh;
width: 30vw;
height: 90vh;
display: flex;
flex-direction: column;
align-items: start;
justify-content: center;
list-style: none;
opacity: 0.0;
}
.content-control
{
position: relative;
margin: 0 0 0 0;
display: flex;
flex-direction: row;
align-items: start;
justify-content: flex-start;
overflow: hidden;
}
.content-data
{
position: relative;
margin: 0 0 0 0;
padding: 0 0 0 0;
width: auto;
display: flex;
flex-direction: column;
align-items: center; …Run Code Online (Sandbox Code Playgroud) 我需要为Linux(SDL)应用程序实现一个简单的图形消息框,类似于C++中的Windows MessageBox(gcc/g ++ 4.4.0).它需要做的只是显示标题,消息和确定或关闭按钮,并在单击该按钮时返回到调用功能.
SDL只使用X(11)打开(OpenGL)渲染窗口.
我查看了一个关于GTK实现的类似线程,但该实现似乎无法正常工作.
我也尝试了wxWidgets的wxMessageBox函数,但编译头文件会使编译器在include/c ++/4.4.0/bits/stl_algobase.h(openSuSE 11.1 32位上的gcc 4.4.0 32位)中抛出有关语法错误的错误消息.使用wxWidgets还意味着必须链接大量的库,将STL添加到我的应用程序(否则不需要)以及谁知道还有什么,所以我不想使用wxWidgets.
X11/motif(openmotif)有我需要的东西(XmCreate {Error | Warning | InfoDialog),但是这些需要一个我没有的父窗口小部件(例如顶层窗口),并且不接受这些的NULL参数.
所以我现在很难过.有一种简单的方法可以做我想要的吗?或者至少有一半的简单/简单/直接的?如果是,哪一个(尽可能多地提供详细信息将受到高度赞赏).
功能失常的例子:
public struct MyStruct { public int i, j; }
static readonly MyStruct [] myTable = new MyStruct [3]
{
{0, 0}, {1, 1}, {2, 2}
}
Run Code Online (Sandbox Code Playgroud)
我知道这段代码不起作用.现在我该如何写下来(正确的语法)?
这背后的想法如下.Afaik结构数组的元素是值类型,因此myTable指向包含三个MyStruct对象的内存位置(而不是包含三个(未初始化的)MyStruct对象指针的内存位置).
那么我该如何初始化那些MyStruct对象,什么是正确的语法?我不必再分配它们了吧?
实际上我在主题标题中给出了与主题相关的几个问题.
我已经在我的应用程序中使用Perlin函数创建闪电,但我对我的实现并不完全满意.
以下问题基于初始和改进的Perlin噪声实现.
为了简化这个问题,让我们假设我通过使用1D Perlin函数调制由这些节点上的N个节点组成的水平线的高度来创建简单的2D闪电.
据我所知,传递给Perlin函数的两个后续值必须相差至少一个,否则得到的两个值将是相同的.这是因为使用简单的Perlin实现,Random函数使用int参数,并且在改进的实现中,值被映射到[0..255],然后用作包含值[0..255]的数组的索引]随机分布.是对的吗?
如何实现Perlin函数返回的第一个和最后一个偏移值(即节点0和N-1)始终为0(零)?现在我用我的Perlin函数调制一个正弦函数(0 .. Pi)来实现这个目标,但这并不是我想要的.将它们设置为零并不是我想要的,因为我想要一条不错的闪电路径,而不是锯齿状的.
如何改变Perlin功能(这样我可以使用两条不同的路径作为闪电的动画起点和终帧)?我当然可以为每个节点值添加固定的随机偏移量,或者使用不同的设置置换表来改善Perlin噪声,但是有更好的选择吗?
有没有办法从文件中读取二进制数据到像C中的数组,我可以将任何类型的指针传递给i/o函数?我想像BinaryReader :: ReadBytes(),但返回一个byte [],我无法转换为所需的数组指针类型.
C#如何处理struct数组 - 我是否需要分配每个数组元素(就好像它是一个类对象数组)?
例:
public struct RGBA { public byte red, green, blue, alpha; }
public RGBA [] colorBuffer = new RGBA [1024*1024];
Run Code Online (Sandbox Code Playgroud)
现在colorBuffer是一个指向RGBA对象的指针数组,我是否必须分配它们,例如:
for (int i = 0; i < colorBuffer.Length; i++)
colorBuffer [i] = new RGBA ();
Run Code Online (Sandbox Code Playgroud)
或者colorBuffer指向一个4 MB大小的内存块,包含1 MB RGBA结构?
c# ×3
c++ ×2
css3 ×1
html ×1
javascript ×1
linux ×1
messagebox ×1
perlin-noise ×1
wxwidgets ×1
x11 ×1