快手 combobox 问题

菲菲OSC 发布于 2014/03/10 22:38
阅读 759
收藏 0

下面代码,combobox 拉下其列表框会遮挡com控件,有什么方法可以不遮挡吗?

import win.ui;
/*DSG{{*/
var winform = ..win.form(text="AAuto Form";right=490;bottom=306)
winform.add(
combobox={cls="combobox";text="combobox";left=108;top=82;right=323;bottom=102;edge=1;items={};mode="dropdown";z=1};
static={cls="static";text="static";left=108;top=84;right=321;bottom=242;hide=1;transparent=1;z=2}
)
/*}}*/

import com;
var dataGrid = winform.static.createEmbed("MSFlexGridLib.MSFlexGrid.1"); 
var gd = dataGrid._object

// 初始化界面
with gd{
	Cols =4 // 列
	Rows = 4 //行
	setTextMatrix(0,0,"材料编码")
	setTextMatrix(0,1,"材料名称")
	setTextMatrix(0,2,"规格")
	setTextMatrix(0,3,"单位")	
}

winform.combobox.add("")
winform.combobox.oncommand = function(id,event){
	if(event == 0x7/*_CBN_DROPDOWN*/){
		winform.static.hide = 0
	}	
}

winform.show() 
win.loopMessage();



加载中
0
菲菲OSC
菲菲OSC

摸索了几天,才解决这个问题,顶

import win.ui;
/*DSG{{*/
var winform = ..win.form(text="AAuto Form";right=490;bottom=306)
winform.add(
combobox={cls="combobox";text="combobox";left=108;top=82;right=323;bottom=102;edge=1;items={};mode="dropdown";z=1};
static={cls="static";text="static";left=105;top=103;right=318;bottom=261;hide=1;notify=1;transparent=1;z=2}
)
/*}}*/

import win.subclass
import com;
var dataGrid = winform.static.createEmbed("MSFlexGridLib.MSFlexGrid.1"); 
var gd = dataGrid._object

// 初始化界面
with gd{
	Cols =4 // 列
	Rows = 4 //行
	setTextMatrix(0,0,"材料编码")
	setTextMatrix(0,1,"材料名称")
	setTextMatrix(0,2,"规格")
	setTextMatrix(0,3,"单位")	
}

winform.combobox.oncommand = function(id,event){
	if(event == 0x7/*_CBN_DROPDOWN*/){
		 ::PostMessage(winform.combobox.hwnd, 0x14F/*_CB_SHOWDROPDOWN*/, 0, 0);
		 winform.static.hide = 0
	}	
}

winform.show() 
win.loopMessage();



0
figer1
figer1

不是很理解具体要实现的效果?!你在在控件上放一个下拉框,然后还不能让他显示在前面,一个拉不出来的下拉框为什么不直接用文本框呢?

 

0
菲菲OSC
菲菲OSC

因为下拉组合框的列表只能一列数据,而数据库有多列数据,所以这个下拉框只是一个虚设,目的要的是下拉按钮,当用户点击下拉按钮时,将隐藏的表控件显示出来,从中选择获取数据。

之前用sendmessage ,但不成功,以为思路错了,绕了几个弯,继续研究搜索,才发现原来要用postmessage才行。能在CSDN找到答案,说明我这个效果并不是独特要求。

在文本框旁边放一个按钮,组合的视图效果没有下拉框好看。

返回顶部
顶部