主页
Top.Mail.Ru Yandeks.Metrika
论坛:“主要”;
当前存档:2002.07.25;
下载:[xml.tar.bz2];

向下

如何使儿童形式保持大小 找到类似的分支


Андрусь   (2002-07-11 12:20) [0]

大家好 出现了这样的问题。 也许有人遇到过 - 告诉我。 有一个MDI应用程序。 如何使子窗口保持与应用程序开发阶段相同的大小。 在FormCreate上调整大小是不可取的 - 在表单na上。 元素的大小取决于表单的大小,我也不想规定它们的大小。 我想说的是,即使是主要的问题是,当调整窗口大小时,附加元素的尺寸和位置也不会改变。
提前谢谢。



Skier   (2002-07-11 12:22) [1]

>安德鲁斯

>如何使子窗口保持相同的大小
>在应用程序的开发阶段。


您希望运行时窗体的大小不会更改,
所以???



Андрусь   (2002-07-11 12:26) [2]

我不太明白你的问题:我希望子窗体在运行时和执行时大小相同。



Андрусь   (2002-07-11 12:52) [3]

为什么winda会自行改变childa的大小。 如何避免它 - 这就是问题所在。



Skier   (2002-07-11 12:57) [4]

>安德鲁斯
如果在OnShow中设置孩子的大小怎么办?



Андрусь   (2002-07-11 13:10) [5]

我上面说过,主要问题是压制元素(在锚点的帮助下)。 我改变了表单的大小,大小,位置的变化。 我有很多表单,我不希望FormShow或FormCreate上的每个元素挂起一个具有重写属性和位置的处理程序。



Skier   (2002-07-11 13:12) [6]

>安德鲁斯


>使用锚点


什么Align不适合或者什么?



Андрусь   (2002-07-11 13:17) [7]

说实话,不是真的 - 在2元素的一行中的形式 - TEdit连续。 一个固定尺寸,压到右边缘,另一个 - 当调整窗体大小时应该随之拉伸。



Skier   (2002-07-11 13:33) [8]

>安德鲁斯

从TEdits中取消所有锚点,并为表单写入:

过程TForm1.WMSize(var消息:TWMSize); 开始 继承; Edit1.Left:= ClientWidth - Edit1.Width; Edit2.Left:= 0; Edit2.Width:= ClientWidth - Edit1.Width; 结束;



Андрусь   (2002-07-11 13:47) [9]

我写了 - 许多表格,不想为每个表格开处方。 我想通常来理解。 它适合我锚如何工作。 Windows会立即改变窗口的大小,并将其更改为地狱。 为什么元素不变?



Skier   (2002-07-11 13:55) [10]

>安德鲁斯
你是如何通过锚点来使你的TEdit与表格一起伸展的?



Андрусь   (2002-07-11 14:02) [11]

因此它向右延伸,第一个属性的3形式为真。



Skier   (2002-07-11 14:08) [12]

>安德鲁斯
恕我直言,这将无法工作,以便组件被拉伸。

做一个实验:

- 创建一个新的应用程序
- 放在TEdit3表格上
- 将第一个3属性锚定为True。
- 更改表单的大小。

写下结果......



Skier   (2002-07-11 14:12) [13]

>安德鲁斯
你希望TEdit像是一样伸展
他被要求对齐:= alClient ???



Андрусь   (2002-07-11 14:19) [14]

不完全是alClient。所以距离电子邮件右边缘的距离。 到窗体边缘并从左边缘到左边缘没有变化。
但这不是重点。 改变孩子的大小是多少......: - {



Skier   (2002-07-11 14:37) [15]

>安德鲁斯

>改变孩子的大小是多少......: - {


所以在运行时它被“塞进”主要形式:(



jonik pegas   (2002-07-11 14:47) [16]

>安德鲁斯
当你在MDI childe上编辑对齐的3时,你做得太多了
第一个锚是我的,他们仍然躺在框架上并对齐它,因此一般的毛刺zadolbali-edit使宽度超过父框架,并且没有任何减少。 我吐了这个案子,关掉了正确的路线
因此,与右边缘的距离保持不变,要么您必须手动执行,请参阅Skier,或者您可以尝试将TstringGrid网格投射到窗体上并在其中绘制OnDrawCell上的编辑。
至于更改所有表单,请将Skier代码注册为一个并从中继承其他形式。



Андрусь   (2002-07-11 14:57) [17]

> jonik pegas©
我如何规定所有形式 - 元素是不同的,它们坚持不同的方式。我必须每次都写或制作不同压制元素的组件 - 这很可悲......
>滑雪者©
从ch调用时,chaylda的大小有什么变化。 形式。 看一下标准的MDI,那里有一点点小小的东西,但是有些人在他打电话时说他不是他的尺寸: - {...



FLAME   (2002-07-11 15:26) [18]

MDI根本不是最好的IMHO界面。
在WindowState,Position属性的MDIChild中设置了什么值? 可能应该把wsNormal和poDefault。 另一个可能值得添加BorderStyle = bsSingle,这样表单的大小无法改变。 在用于调整可以由所有子窗体共享的窗体的消息处理程序中,禁止调整大小。
我想知道你用什么方法来创建Child表单?



Андрусь   (2002-07-11 15:45) [19]

>火焰
一切都是书面形式,形式创造
Child:= TMDIChild.Create(Application);
至于MDI不是最好的界面,我同意,但这是必要的 - 彼此之间有完全独立的形式,用户可以按照自己的意愿工作。



Skier   (2002-07-11 16:07) [20]

>安德鲁斯


>有完全独立的形式,与juzver
>可以按你的意愿工作


你需要一个MDI接口吗?
(顺便说一下,据我记得,微软本身并不推荐它
使用(吃了很多资源))



Андрусь   (2002-07-11 16:24) [21]

有了资源 - 有点想通过包。 但是这样的界面是必需的。



Skier   (2002-07-11 16:32) [22]

>安德鲁斯
:(((



Андрусь   (2002-07-11 16:38) [23]

好吧,我要求解释一下 - Windows正在做什么以及如何避免,结果已经过时了。就像ICQ一样



Proton   (2002-07-11 23:02) [24]

看看这个
表示表单的大小和位置。

type TPosition =(poDesigned,poDefault,poDefaultPosOnly,poDefaultSizeOnly,

poScreenCenter,poDesktopCenter,poMainFormCenter,poOwnerFormCenter);



Страницы: 1 整个分支

论坛:“主要”;
当前存档:2002.07.25;
下载:[xml.tar.bz2];

楼上









内存:0.64 MB
时间:0.056 c
1-81273
三角洲
2002-07-15 12:47
2002.07.25
剪贴板


7-81498
Crypter
2002-05-08 14:37
2002.07.25
如何找出被点击的内容


14-81412
GydruS
2002-06-20 12:07
2002.07.25
在阴雨天气下,你能和女孩做些什么?


1-81248
nwc_eminem
2002-07-14 18:20
2002.07.25
如何写入注册表值


1-81278
我开始
2002-07-12 04:28
2002.07.25
一般





南非荷兰语 阿尔巴尼亚人 阿拉伯语 亚美尼亚 阿塞拜疆 巴斯克 白俄罗斯 保加利亚语 加泰罗尼亚 简体中文 中国(繁体) 克罗地亚 捷克 丹麦语 荷兰人 英语 爱沙尼亚语 菲律宾人 芬兰 法文
加利亚西语 格鲁吉亚语 德语 希腊语 海地克里奥尔语 希伯来语 印地语 匈牙利 北日耳曼语 印度尼西亚人 爱尔兰语 意大利语 日本性玩偶 韩语 拉脱维亚 立陶宛 马其顿 马来语 马耳他语 挪威语
波斯语 波兰语 葡萄牙语 罗马尼亚 俄语 塞尔维亚 斯洛伐克 斯洛文尼亚 西班牙语 斯瓦希里 瑞典语 泰国人 土耳其 乌克兰 乌尔都语 越南人 威尔士语 意第绪语 孟加拉 波斯尼亚
宿务 世界语 古吉拉特语 豪萨语 苗族 伊博 爪哇 卡纳达语 高棉 老挝 拉丁语 毛利 马拉 蒙古人 尼泊尔 旁遮普 索马里 泰米尔人 泰卢固语 约鲁巴语
祖鲁
英文 Французский Немецкий Итальянский Португальский 俄文 Испанский