我来了,但只能坐几分钟, 你跟踪一下啊,还有, case i of 1:CheckListBox1.Checked[0]:=qxb; 2:CheckListBox1.Checked[1]:=qxb; 3:CheckListBox1.Checked[2]:=qxb; 4:CheckListBox1.Checked[3]:=qxb; 5:CheckListBox1.Checked[4]:=qxb; 6:CheckListBox1.Checked[5]:=qxb; 7:CheckListBox1.Checked[6]:=qxb; 8:CheckListBox1.Checked[7]:=qxb; 9:CheckListBox1.Checked[8]:=qxb; end ; 可以用 CheckListBox1.Checked[i-1]:=qxb 代替,好看多了
小昂师父来了,又有救了 这段成徐逻辑上有错误吗,偶跟踪了一下,recordcount=1的
我好象看到错误了 我估计 qxs:=data.qu_pass.fieldbyname('qx').asstring; 你的qxs应该是空的, 否则 for i:=1 to length(qxs) do begin if qxs[i]='1' then qxb:=true else qxb:=false;
你跟踪一下啊,还有,
case i of
1:CheckListBox1.Checked[0]:=qxb;
2:CheckListBox1.Checked[1]:=qxb;
3:CheckListBox1.Checked[2]:=qxb;
4:CheckListBox1.Checked[3]:=qxb;
5:CheckListBox1.Checked[4]:=qxb;
6:CheckListBox1.Checked[5]:=qxb;
7:CheckListBox1.Checked[6]:=qxb;
8:CheckListBox1.Checked[7]:=qxb;
9:CheckListBox1.Checked[8]:=qxb;
end ;
可以用 CheckListBox1.Checked[i-1]:=qxb 代替,好看多了
这段成徐逻辑上有错误吗,偶跟踪了一下,recordcount=1的
我估计
qxs:=data.qu_pass.fieldbyname('qx').asstring;
你的qxs应该是空的,
否则 for i:=1 to length(qxs) do
begin
if qxs[i]='1' then qxb:=true else qxb:=false;
会报错
把qxs[i]= 改成 qxs[i-1]
如果data.qu_pass.fieldbyname('qx').asstring;
是空的,自然不会有什么反应
你看一下,你的问题原因是程序的 for 循环一次都没有执行,
也就是 length(qxs)=0,不信你可以定义一个变量 i,
i:= length(qxs)
跟踪看看i的值是多少
你找一下原因,我明天早上再过来看
跟踪一下,发现recoerdcount的结果总是1111111111,即超级用户的qx
1,qu_pass应该改为qu_yhkl
2,其中qu_yhgl的sql改为:
select *
from pass
where alias=:alias但是,偶有一个疑问:alias是别名,不是唯一的,虽然可以更换为name,
但出于设计,偶不用name作参数,而用alias,有什么方法解决这个问题呢?
偶曾用两个参数:
where alias=:alias and name=:name
代码中:
data.qu_yhgl.parambyname('alias').value:=treeview1.selected.text
data.qu_yhgl.parambyname('name').value:=treeview1.selected.……。text
在设计中,alias是name的父节点,name是alias的第一个子节点--这个相对位置不变,
selected是当前选择,所以必须为name的selected定位,即"……'中应该怎么写?
以表示它是alias的第一个子节点?tell me,
有点麻烦,不过没办法,你的意见呢?