private void pan_Drowing_MouseClick(object sender, MouseEventArgs e)
{
int a,b;
a = eX;
b = eY;
}
右键单击选择的控件,单击“设置控件格式”,然后单击“属性”选项卡。
在“对象位置”下,执行下列 *** 作之一:
若要在单元格移动(例如排序单元格)时使控件不离开该单元格,并在单元格高度和宽度发生变化时调整控件大小,请选择“大小、位置随单元格而变”。
注释 表单控件无法使用此选项。
若要在单元格移动(例如排序包含该单元格的区域或表)时使控件不离开该单元格,并使控件的大小不随该单元格高度和宽度的变化而变化,请选择“大小固定,位置随单元格而变”。
若要使控件的位置和大小均不随该单元格的位置、高度和宽度的变化而变化,请选择“大小、位置均固定”。
网上捜的,试试吧
GetWindowRect() 得到的是在屏幕坐标系下的RECT(即以屏幕左上角为原点)
GetClientRect() 得到的是在客户区坐标系下的RECT(即以所在窗口左上角为原点,去掉了标题栏计算,仅仅是个大小,返回值的左上角永远为0,0)
ScreenToClient() 就是把屏幕坐标系下的RECT坐标转换为客户区坐标系下的RECT坐标。
我的总结:
如果需要获得窗体在屏幕上的位置,使用GetWindowRect
如果需要获得窗体的大小,使用GetClientRect
最近,很多网友问小编excel中的窗体控件在哪?在Excel2010和Excel2007中运用窗体控件,必须启用开发工具选项卡,而这篇文章将具体的给大家介绍一下如何运用Excel中的作业表窗体控件需要的朋友欢迎借鉴
Microsoft Excel 提供了多个对话框作业表控件,可用于从列表中挑选项目。 控件示例为列表框、组合框、数值调理钮和滚动条。下列方法将为大家演示如何运用列表框、组合框、数值调理钮和滚动条。 以下示例运用同一列表、单元格链接和 INDEX 函数。感兴趣的朋友一起去看看吧!启用“开发工具”选项卡要在 Excel 2010 中运用窗体控件,必须启用“开发工具”选项卡。 为此,请按照下列过程 *** 作:单击“文件”,然后单击“选项”。
单击左侧窗格中的“自定义功能区”。选中右侧“主选项卡”下的“开发工具”复选框,然后单击“确认”。要在 Excel 2007 中运用窗体控件,必须启用“开发工具”选项卡。 为此,请按照下列过程 *** 作:单击“Microsoft Office 按钮”,然后单击“Excel 选项”。
单击“常用”,选中“在功能区显现‘开发工具’选项卡”复选框,然后单击“确认”。设置列表、单元格链接和索引在新作业表中的 H1:H20 区域中键入下列项目:H1 : Roller SkatesH2 : VCRH3 : DeskH4 : MugH5 : CarH6 : Washing MachineH7 : Rocket LauncherH8 : BikeH9 : PhoneH10: CandleH11: CandyH12: SpeakersH13: DressH14: BlanketH15: DryerH16: GuitarH17: DryerH18: Tool SetH19: VCRH20: Hard Disk在单元格 A1 中,键入以下公式:=INDEX(H1:H20,G1,0)列表框示例若要在 Excel 2010 和 Excel 2007 中添加列表框,请单击“开发工具”选项卡,在“控件”组中单击“刺进”,然后单击“窗体控件”下的“列表框窗体(控件)”。
要在 Excel 2003 和更早版别的 Excel 中添加列表框,请单击“窗体”工具栏上的“列表框” 按钮。 假如未显现“窗体”工具栏,请指向“视图”菜单上的“工具栏”,然后单击“窗体”。在作业表中单击你期望列表框左上角所显现的位置,然后将列表框拖动到所需的右下角位置。 在本示例中,创立包含单元格 B2:E10 的列表框。在“控件” 组中,单击“属性” 。在“设置对象格式”窗口中,键入以下信息,然后单击“确认”。要指定列表的区域,请在“数据源区域”框中键入 H1:H20。要在单元格 G1 中键入数值(根据在列表中挑选的项目),请在“单元格链接”框中键入 G1。留意 INDEX() 公式运用 G1 中的值返回正确的列表项目。在“选定类型” 下,确保挑选“单选”选项。留意 仅在运用 Microsoft Visual Basic for Applications 过程返回列表值时,“复选”和“扩展”选项才有用。 另请留意,运用“三维阴影”复选框可使列表框具有三维外观。列表框应显现项目列表。 要运用列表框,请单击恣意单元格,这样不会挑选列表框。 假如您单击列表中的某一项目,单元格 G1 将更新为一个数字,以指示所选项目在列表中的位置。 单元格 A1 中的 INDEX 公式运用此数字显现项目的名称。组合框示例要在 Excel 2010 和 Excel 2007 中添加组合框,请依次单击“开发工具”选项卡和“刺进”,然后单击“窗体控件”下的“组合框”。要在 Excel 2003 和更早版别的 Excel 中添加组合框,请单击“窗体”工具栏上的“组合框”按钮。在作业表中单击你期望组合框左上角所显现的位置,然后将组合框拖动到所需的右下角位置。 在本示例中,创立包含单元格 B2:E2 的组合框。右键单击组合框,然后单击“设置控件格式”。键入以下信息,然后单击“确认”:要指定列表的区域,请在“数据源区域”框中键入 H1:H20。要在单元格 G1 中键入数值(根据在列表中挑选的项目),请在“单元格链接”框中键入 G1。留意 INDEX 公式运用 G1 中的值返回正确的列表项目。在“下拉显现项数”框中,键入 10。 此条目决定在必须运用滚动条查看其他项目之前显现的项目数。留意“三维阴影”复选框是可选项。 它可以为下拉框或组合框增加三维效果。下拉框或组合框应显现项目列表。 要运用下拉框或组合框,请单击恣意单元格,这样不会挑选对象。 假如单击下拉框或组合框中的某一项目,单元格 G1 将更新为一个数字,以指示所选项目在列表中的位置。 单元格 A1 中的 INDEX 公式运用此数字显现项目的名称。数值调理钮示例要在 Excel 2010 和 Excel 2007 中添加数值调理钮,请依次单击“开发工具”选项卡和“刺进”,然后单击“窗体控件”下的“数值调理钮”。要在 Excel 2003 和更早版别的 Excel 中添加微调框,请单击“窗体”工具栏上的“微调框”按钮。在作业表中单击你期望数值调理钮左上角所显现的位置,然后将数值调理钮拖动到所需的右下角位置。 在本示例中,创立包含单元格 B2: B3 的数值调理钮。右键单击数值调理钮,然后单击“设置控件格式”。键入以下信息,然后单击“确认”:在“当时值”框中,键入 1。此值将初始化数值调理钮,以便 INDEX 公式指向列表中的第一个项目。在“最小值”框中,键入 1。此值会将数值调理钮的顶部限制为列表中的第一个项目。在“最大值”框中,键入 20。此数字指定列表中条目的最大数。在“步长”框中,键入 1。此值控制数值调理钮控件将当时值增大多少。要在单元格 G1 中键入数值(根据在列表中挑选的项目),请在“单元格链接”框中键入 G1。单击恣意单元格,这样不会挑选数值调理钮。 单击数值调理钮中的向上控件或向下控件时,单元格 G1 将更新为一个数字,以指示数值调理钮的当时值与数值调理钮步长的和或差。 然后,此数字将更新单元格 A1 中的 INDEX 公式以显现下一项目或上一项目。假如您在当时值为 1 时单击向下控件,或许在当时值为 20 时单击向上控件,则数值调理钮值不会更改。滚动条示例要在 Excel 2010 和 Excel 2007 中添加滚动条,请依次单击“开发工具”选项卡和“刺进”,然后单击“窗体控件”下的“滚动条”。要在 Excel 2003 和更早版别的 Excel 中添加滚动条,请单击“窗体”工具栏上的“滚动条”按钮。在作业表中单击你期望滚动条左上角所显现的位置,然后将滚动条拖动到所需的右下角位置。 在本示例中,创立包含单元格 B2:B6(高度)且约为列宽四分之一的滚动条。右键单击滚动条,然后单击“设置控件格式”。键入以下信息,然后单击“确认”:在“当时值”框中,键入 1。此值将初始化滚动条,以便 INDEX 公式指向列表中的第一个项目。在“最小值”框中,键入 1。此值会将滚动条的顶部限制为列表中的第一个项目。在“最大值”框中,键入 20。 此数字指定列表中条目的最大数。在“步长”框中,键入 1。此值控制滚动条控件将当时值增大多少。在“页步长”框中,键入 5。 该值控制当您单击滚动条中滚动框的恣意一边时将当时值增大多少。要在单元格 G1 中键入数值(根据在列表中挑选的项目),请在“单元格链接”框中键入 G1。留意“三维阴影”复选框是可选项。 运用该复选框可使滚动条具有三维外观。单击恣意单元格,这样不会挑选滚动条。 假如您单击滚动条中的向上控件或向下控件,单元格 G1 将更新为一个数字,以指示滚动条的当时值与滚动条步长的和或差。 此数字在单元格 A1 中的 INDEX 公式中运用,以显现当时项目的下一项目或上一项目。 还可以拖动滚动框以更改值,或单击滚动框恣意一侧的滚动条以将该值增大 5(“页步长”值)。 假如您在当时值为 1 时单击向下控件,或许在当时值为 20 时单击向上控件,则滚动条不会更改。教程结束,以上就是关于excel中的窗体控件在哪如何运用Excel中的作业表窗体控件的全部内容,文章有些长,建议小伙伴们多花些时间仔细研究一下哦!
正确的方法是这样的:
crect
rect;
getwindowrect(&rect);
这样获得的是控件相对于屏幕的坐标,然后用screentoclient(&rect)就可以获得控件相对于父窗口的坐标
注意:如果你用getclientrect(&rect)的话,rectleft和recttop始终是0,得到的并不是实际坐标。
先取得textbox距窗体顶部的距离(textboxy),然后再根据滚动条的值做修正。
20分就20分,没必要说是100分。
function GetTop(obj) {
return (objtop-objparentNodescrollTop);
}
参考资料是一篇自动补全的例子。
以上就是关于怎样获取控件所在的窗体呢全部的内容,包括:怎样获取控件所在的窗体呢、关于Excel中窗体控件的位置和大小变化的问题、VC中如何获取窗口相对桌面的位置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)