社区
控件
帖子详情
如何创建设计时的控件?
现在还是人类
2008-04-18 01:20:48
就像VB或FontPage一样有插入控件的功能,并且插入控件后是设计时
的状态。这类的控件怎么创建的呢?
CreateObject创建出来的是运行时控件,是不是有什么属性是控制控
件对象为设计时状态的吗?请高手赐教。
帮顶的也有分,还请大家多多支持。
...全文
260
32
打赏
收藏
如何创建设计时的控件?
就像VB或FontPage一样有插入控件的功能,并且插入控件后是设计时 的状态。这类的控件怎么创建的呢? CreateObject创建出来的是运行时控件,是不是有什么属性是控制控 件对象为设计时状态的吗?请高手赐教。 帮顶的也有分,还请大家多多支持。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
32 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ccmm2922
2008-05-18
打赏
举报
回复
ding.
现在还是人类
2008-05-17
打赏
举报
回复
不会这样就没戏了吧
ORSCAR
2008-05-16
打赏
举报
回复
LZ可以送10分技术分给我吗?急用`谢谢啦`好心有好报!
HowAreYou12345678
2008-05-13
打赏
举报
回复
你要的是否就像PictureBox一样的容器控件。
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=64261&lngWId=1
现在还是人类
2008-05-12
打赏
举报
回复
有没有高手知道呀?
tim_zhang
2008-05-08
打赏
举报
回复
顶!
meiZiNick
2008-05-01
打赏
举报
回复
我也想了解,谢谢LZ.
现在还是人类
2008-04-26
打赏
举报
回复
顶
ly012659
2008-04-25
打赏
举报
回复
这个貌似比较高深,学习下...
薛峰1688
2008-04-24
打赏
举报
回复
UP
silencenet
2008-04-24
打赏
举报
回复
学习了。。
运行时设计时状态属性。。 ^^
现在还是人类
2008-04-24
打赏
举报
回复
看来只有一楼的兄弟靠点普,但对于VB的开发人员来说的确很难。
自己顶上去,等高手
galactic
2008-04-24
打赏
举报
回复
不明白 还是顶一下算了
现在还是人类
2008-04-21
打赏
举报
回复
谢谢楼上的兄弟,但是你的方法不是我希望的东西,我想要的是一个设计时环境。
不是一个模拟的样子。因为对于控件而言,本身就有设计时和运行时的设计区别。
如果有的控件本身作了设计时和运行时的区别操作,用你的方法是看不到应该看到
或应该运行的控件处理的。
波导终结者
2008-04-21
打赏
举报
回复
Call ReleaseCapture
Call SendMessage(hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0)
用这种方法,可以模拟拖动标题栏,那么把HTCAPTION换成
'#define HTLEFT 10
'#define HTRIGHT 11
'#define HTTOP 12
'#define HTTOPLEFT 13
'#define HTTOPRIGHT 14
'#define HTBOTTOM 15
'#define HTBOTTOMLEFT 16
'#define HTBOTTOMRIGHT 17
这些的话,就能实现模拟对窗体大小的调整。
而控件只要有句柄,也是可以这样干的,我在Text,Command等都试过了,可以用。
只要在Mousemove里判断一下鼠标的位置,在控件边缘的话就变成相应的拖动,在控件中间就是移动。
只是这样干虽然简单,却没有设计时的八个小方块。当然,如果要加上方块其实也不难,花点时间就行了。
东方之珠
2008-04-21
打赏
举报
回复
up
现在还是人类
2008-04-21
打赏
举报
回复
路过的走过的帮顶顶,拜托
lyserver
2008-04-21
打赏
举报
回复
补充一点,以上代码只针对标准Windows子控件,VB的控件不能使用CreateWindowEx,而要使用其它办法,网上有很多,不再啰嗦。
lyserver
2008-04-21
打赏
举报
回复
可以模拟设计时的控件,思路如下:
第一步、使用CreateWindowEx创建控件,如:
hCtl = CreateWindowEx(0, "Edit", "我的文本框", WS_CHILD Or WS_VISIBLE, Left, Top, 100, 22, m_hWndParent, 0, App.hInstance, ByVal 0&)
If IsWindow(hCtl)
SetWindowLong hCtl,GWL_WNDPROC,newProc '截获消息泵
End If
ShowWindow hCtl, SW_SHOW Or SW_NORMAL
UpdateWindow hCtl
第二步、让创建的控件可调整大小
SetWindowLong hCtl, GetWindowLong(hCtl, GWL_STYLE) Or WS_THICKFRAME, GWL_STYLE
第三步、让创建的控件能改变位置
'在自己的消息泵里处理鼠标移动
Select Case wMsg
Case WM_LBUTTONDOWN
'先判断鼠标位置,当位于控件矩形-4时允许拖动,以免与调整动作相冲突
'鼠标位置判断代码略
ReleaseCapture()
SendMessage( hCtl, WM_NCLBUTTONDOWN, HTCAPTION, 0 )
End Select
第四步、修改控件的文本等属性
SetWindowText hCtl, sText '修改文本
SetTextColor GetWindowDC(hCtl), vbBlack '修改前景色
SetBkColor GetWindowDC(hCtl),vbRed '修改背景色
......
第五步、销毁控件
DestroyWindow hCtl
我试了所有标准子控件,均可以创建,只不过标签控件(类名:Static)有点麻烦,不能调整大小。
楼主可在此基础上,把需要增加的控件封装一个类里,还可以增加Ambient属性,这个属性用来控件是否允许调整大小。
现在还是人类
2008-04-19
打赏
举报
回复
顶者有分,帮顶顶,拜托
加载更多回复(11)
C#自定义
控件
库
7. **性能优化**:在
设计
自定义
控件
时
,要考虑性能因素,避免不必要的重绘和计算。合理使用双缓冲技术可以减少闪烁,而优化重绘逻辑则可以提高
控件
的响应速度。 8. **源码封装**:将自定义
控件
打包成库,便于在多个...
C# IP地址输入
控件
在.NET框架中,开发Windows应用程序
时
,我们常常需要
创建
用户界面元素来处理网络相关的数据,如IP地址。C#中的"C# IP地址输入
控件
"就是为了解决这个问题而
设计
的,它提供了一个专用于输入IP地址的
控件
,提高了用户...
winform实现360、QQ窗体与
控件
3. **自定义
控件
**:在WinForm中,我们可以
创建
自定义
控件
以满足特定的UI需求。这通常涉及到继承自`System.Windows.Forms.Control`类,并重写它的绘图方法。例如,要实现QQ风格的按钮,我们需要绘制按钮的背景、边框...
仿IOS日期
控件
(增加上下午,
时
分选择)
在IT行业中,日期
控件
是用户界面
设计
中的一个重要组成部分,特别是在移动应用开发中。iOS设备上的日期选择器以其简洁、直观的
设计
受到了用户的喜爱。本文将深入探讨如何在非iOS平台上
创建
一个仿iOS风格的日期
控件
,...
C#自定义
控件
的制作.doc
在C#编程中,自定义
控件
的制作是一项基础但重要的技能,它允许开发者根据特定需求
创建
具有独特功能和外观的UI元素。本教程旨在引导初学者了解如何在C#环境中构建自己的
控件
,虽然例子可能较为简单,但其目的是激发...
控件
1,453
社区成员
41,351
社区内容
发帖
与我相关
我的任务
控件
VB 控件
复制链接
扫一扫
分享
社区描述
VB 控件
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章