在vb中:
ListBox1.AddItem 'aaaaa'
ListBox1.ItemData(List1.NewIndex) = 1000
其中ItemData属性非常有用,我们可以将listbox看似一个二维数组.在delphi中的listbox不知如果实现.
ListBox1.AddItem 'aaaaa'
ListBox1.ItemData(List1.NewIndex) = 1000
其中ItemData属性非常有用,我们可以将listbox看似一个二维数组.在delphi中的listbox不知如果实现.
解决方案 »
- DBRichViewEdit在ms sql用什么字段
- 取TDHTMLEdit->DOM->images->length提示不支持此接口?急,望高手指点!
- 请问RichView部件在那个选项卡利?我怎么找不到啊??另外它的用法和RichEdit部件一样吗??
- 如何取得一个数组里面元素的个数?
- 请问如何才能成为高手?
- widestring为什么出现这种情况?
- 急找PDF In-The-Box v1.6 For Delphi4567控件
- 画图的文本输出问题,very急,请大家帮忙!
- 能不能在 win2000下调用RASAPI32.DLL进行拨号???
- 为什么从数据库查询的记录不对
- 用delphi7开发bs三层数据库
- 动态窗体
能写个实例吗.
hlID:String;
hlCName:String;
hlServer:String;
hlIPAddr:String;
hlMacAddr:String;
end;procedure TForm_EmployeeManager.GetHostList;
var
aQuery:TSHQuery;
vHost:^THostList;
i:integer;
begin
aQuery:=TSHQuery.Create(nil);
ListBoxHost.Clear;
with aQuery do //数据库取数据
begin
SQL.Clear;
SQL.Add('SELECT * FROM THOSTLIST');
SQL.Add('WHERE MACID NOT IN (');
SQL.Add('SELECT HL.MACID FROM TUSERHOSTS UH');
SQL.Add('LEFT JOIN THOSTLIST HL ON UH.HOSTID=HL.MACID');
SQL.Add(format('WHERE UH.USERID=%d)',[CurID]));
SQL.Add('ORDER BY IP_ADDR');
try
Open;
i:=1;
while not eof do //循环
begin
New(vHost); //分配空间
vHost.hlID:=FieldByName('MacID').AsString;
vHost.hlCName:=FieldByName('CName').AsString;
vHost.hlServer:=FieldByName('HostName').AsString;
vHost.hlIPAddr:=FieldByName('IP_Addr').AsString;
vHost.hlMacAddr:=FieldByName('Mac_Addr').AsString;
ListBoxHost.Items.Add(format('%d,%s - %s',[i,vHost.hlCName,vHost.hlIPAddr]));
HostList.AddObject(vHost.hlID,Pointer(vHost)); //这里是关键
Inc(i);
Next;
end;
except
end;
end;
end;
var
vHost:^THostList;
i:integer;
begin
inherited;
for i:=0 to HostList.Count -1 do
begin
if HostList.Objects[i]=nil then continue;
vHost:=pointer(HostList.Objects[i]);
if vHost.hlID=vID then
begin
HostList.Delete(i);
ListBoxHost.Items.Delete(i);
Break;
end;
end;
end;查找和删除的实例
vHost.hlID是否应该改成 VHost^.Hid