📄 viewlist.~pas
字号:
RefItemBindCharName();
end;
procedure TfrmViewList.ButtonItemBindCharNameRefClick(Sender: TObject);
begin
RefItemBindCharName();
end;
procedure TfrmViewList.RefItemBindIPaddr;
var
i: Integer;
ItemBind: pTItemBind;
begin
GridItemBindIPaddr.RowCount := 2;
GridItemBindIPaddr.Cells[0, 1] := '';
GridItemBindIPaddr.Cells[1, 1] := '';
GridItemBindIPaddr.Cells[2, 1] := '';
GridItemBindIPaddr.Cells[3, 1] := '';
ButtonItemBindIPaddrMod.Enabled := False;
ButtonItemBindIPaddrDel.Enabled := False;
g_ItemBindIPaddr.Lock;
try
GridItemBindIPaddr.RowCount := g_ItemBindIPaddr.Count + 1;
for i := 0 to g_ItemBindIPaddr.Count - 1 do begin
ItemBind := g_ItemBindIPaddr.Items[i];
if ItemBind <> nil then begin
GridItemBindIPaddr.Cells[0, i + 1] := UserEngine.GetStdItemName(ItemBind.nItemIdx);
GridItemBindIPaddr.Cells[1, i + 1] := IntToStr(ItemBind.nItemIdx);
GridItemBindIPaddr.Cells[2, i + 1] := IntToStr(ItemBind.nMakeIdex);
GridItemBindIPaddr.Cells[3, i + 1] := ItemBind.sBindName;
end;
end;
finally
g_ItemBindIPaddr.UnLock;
end;
end;
procedure TfrmViewList.GridItemBindIPaddrClick(Sender: TObject);
var
nIndex: Integer;
ItemBind: pTItemBind;
begin
nIndex := GridItemBindIPaddr.Row - 1;
if nIndex < 0 then Exit;
g_ItemBindIPaddr.Lock;
try
if nIndex >= g_ItemBindIPaddr.Count then Exit;
ItemBind := pTItemBind(g_ItemBindIPaddr.Items[nIndex]);
EditItemBindIPaddrItemName.Text := UserEngine.GetStdItemName(ItemBind.nItemIdx);
EditItemBindIPaddrItemIdx.Value := ItemBind.nItemIdx;
EditItemBindIPaddrItemMakeIdx.Value := ItemBind.nMakeIdex;
EditItemBindIPaddrName.Text := ItemBind.sBindName;
finally
g_ItemBindIPaddr.UnLock;
end;
ButtonItemBindIPaddrDel.Enabled := True;
end;
procedure TfrmViewList.EditItemBindIPaddrItemIdxChange(Sender: TObject);
begin
if EditItemBindIPaddrItemIdx.Text = '' then begin
EditItemBindIPaddrItemIdx.Text := '0';
Exit;
end;
EditItemBindIPaddrItemName.Text := UserEngine.GetStdItemName(EditItemBindIPaddrItemIdx.Value);
ButtonItemBindIPaddrMod.Enabled := True;
end;
procedure TfrmViewList.EditItemBindIPaddrItemMakeIdxChange(
Sender: TObject);
begin
if EditItemBindIPaddrItemMakeIdx.Text = '' then begin
EditItemBindIPaddrItemMakeIdx.Text := '0';
Exit;
end;
ButtonItemBindIPaddrMod.Enabled := True;
end;
procedure TfrmViewList.EditItemBindIPaddrNameChange(Sender: TObject);
begin
ButtonItemBindIPaddrMod.Enabled := True;
end;
procedure TfrmViewList.ButtonItemBindIPaddrAddClick(Sender: TObject);
var
i: Integer;
nMakeIdex: Integer;
nItemIdx: Integer;
sBindName: string;
ItemBind: pTItemBind;
begin
nItemIdx := EditItemBindIPaddrItemIdx.Value;
nMakeIdex := EditItemBindIPaddrItemMakeIdx.Value;
sBindName := Trim(EditItemBindIPaddrName.Text);
if not IsIPaddr(sBindName) then begin
Application.MessageBox('IP地址格式输入不正确!!!', '提示信息', MB_OK + MB_ICONERROR);
EditItemBindIPaddrName.SetFocus;
Exit;
end;
if (nItemIdx <= 0) or (nMakeIdex < 0) then begin
Application.MessageBox('输入的信息不正确!!!', '提示信息', MB_OK + MB_ICONERROR);
Exit;
end;
g_ItemBindIPaddr.Lock;
try
for i := 0 to g_ItemBindIPaddr.Count - 1 do begin
ItemBind := g_ItemBindIPaddr.Items[i];
if (ItemBind.nItemIdx = nItemIdx) and (ItemBind.nMakeIdex = nMakeIdex) then begin
Application.MessageBox('此物品已经绑定到其他的IP地址上了!!!', '提示信息', MB_OK + MB_ICONERROR);
Exit;
end;
end;
New(ItemBind);
ItemBind.nItemIdx := nItemIdx;
ItemBind.nMakeIdex := nMakeIdex;
ItemBind.sBindName := sBindName;
g_ItemBindIPaddr.Insert(0, ItemBind);
finally
g_ItemBindIPaddr.UnLock;
end;
SaveItemBindIPaddr();
RefItemBindIPaddr();
end;
procedure TfrmViewList.ButtonItemBindIPaddrModClick(Sender: TObject);
var
nSelIndex: Integer;
nMakeIdex: Integer;
nItemIdx: Integer;
sBindName: string;
ItemBind: pTItemBind;
begin
nItemIdx := EditItemBindIPaddrItemIdx.Value;
nMakeIdex := EditItemBindIPaddrItemMakeIdx.Value;
sBindName := Trim(EditItemBindIPaddrName.Text);
if not IsIPaddr(sBindName) then begin
Application.MessageBox('IP地址格式输入不正确!!!', '提示信息', MB_OK + MB_ICONERROR);
EditItemBindIPaddrName.SetFocus;
Exit;
end;
nSelIndex := GridItemBindIPaddr.Row - 1;
if nSelIndex < 0 then Exit;
g_ItemBindIPaddr.Lock;
try
if nSelIndex >= g_ItemBindIPaddr.Count then Exit;
ItemBind := g_ItemBindIPaddr.Items[nSelIndex];
ItemBind.nItemIdx := nItemIdx;
ItemBind.nMakeIdex := nMakeIdex;
ItemBind.sBindName := sBindName;
finally
g_ItemBindIPaddr.UnLock;
end;
SaveItemBindIPaddr();
RefItemBindIPaddr();
end;
procedure TfrmViewList.ButtonItemBindIPaddrDelClick(Sender: TObject);
var
ItemBind: pTItemBind;
nSelIndex: Integer;
begin
nSelIndex := GridItemBindIPaddr.Row - 1;
if nSelIndex < 0 then Exit;
g_ItemBindIPaddr.Lock;
try
if nSelIndex >= g_ItemBindIPaddr.Count then Exit;
ItemBind := g_ItemBindIPaddr.Items[nSelIndex];
DisPose(ItemBind);
g_ItemBindIPaddr.Delete(nSelIndex);
finally
g_ItemBindIPaddr.UnLock;
end;
SaveItemBindIPaddr();
RefItemBindIPaddr();
end;
procedure TfrmViewList.ButtonItemBindIPaddrRefClick(Sender: TObject);
begin
RefItemBindIPaddr();
end;
procedure TfrmViewList.RefItemCustomNameList;
var
i: Integer;
ItemName: pTItemName;
begin
// GridItemNameList.RowCount:=2;
GridItemNameList.Cells[0, 1] := '';
GridItemNameList.Cells[1, 1] := '';
GridItemNameList.Cells[2, 1] := '';
ButtonItemNameMod.Enabled := False;
ButtonItemNameDel.Enabled := False;
ItemUnit.m_ItemNameList.Lock;
try
GridItemNameList.RowCount := ItemUnit.m_ItemNameList.Count + 1;
for i := 0 to ItemUnit.m_ItemNameList.Count - 1 do begin
ItemName := ItemUnit.m_ItemNameList.Items[i];
if ItemName <> nil then begin
GridItemNameList.Cells[0, i + 1] := UserEngine.GetStdItemName(ItemName.nItemIndex);
GridItemNameList.Cells[1, i + 1] := IntToStr(ItemName.nMakeIndex);
GridItemNameList.Cells[2, i + 1] := ItemName.sItemName;
end;
end;
finally
ItemUnit.m_ItemNameList.UnLock;
end;
end;
procedure TfrmViewList.GridItemNameListClick(Sender: TObject);
var
nIndex: Integer;
ItemName: pTItemName;
begin
nIndex := GridItemNameList.Row - 1;
if nIndex < 0 then Exit;
ItemUnit.m_ItemNameList.Lock;
try
if nIndex >= ItemUnit.m_ItemNameList.Count then Exit;
ItemName := pTItemName(ItemUnit.m_ItemNameList.Items[nIndex]);
EditItemNameOldName.Text := UserEngine.GetStdItemName(ItemName.nItemIndex);
EditItemNameIdx.Value := ItemName.nItemIndex;
EditItemNameMakeIndex.Value := ItemName.nMakeIndex;
EditItemNameNewName.Text := ItemName.sItemName;
finally
ItemUnit.m_ItemNameList.UnLock;
end;
ButtonItemNameDel.Enabled := True;
end;
procedure TfrmViewList.EditItemNameIdxChange(Sender: TObject);
begin
EditItemNameOldName.Text := UserEngine.GetStdItemName(EditItemNameIdx.Value);
ButtonItemNameMod.Enabled := True;
end;
procedure TfrmViewList.EditItemNameMakeIndexChange(Sender: TObject);
begin
ButtonItemNameMod.Enabled := True;
end;
procedure TfrmViewList.EditItemNameNewNameChange(Sender: TObject);
begin
ButtonItemNameMod.Enabled := True;
end;
procedure TfrmViewList.ButtonItemNameAddClick(Sender: TObject);
var
i: Integer;
nMakeIdex: Integer;
nItemIdx: Integer;
sNewName: string;
ItemName: pTItemName;
begin
nItemIdx := EditItemNameIdx.Value;
nMakeIdex := EditItemNameMakeIndex.Value;
sNewName := Trim(EditItemNameNewName.Text);
if (nItemIdx <= 0) or (nMakeIdex < 0) or (sNewName = '') then begin
Application.MessageBox('输入的信息不正确!!!', '提示信息', MB_OK + MB_ICONERROR);
Exit;
end;
ItemUnit.m_ItemNameList.Lock;
try
for i := 0 to ItemUnit.m_ItemNameList.Count - 1 do begin
ItemName := ItemUnit.m_ItemNameList.Items[i];
if (ItemName.nItemIndex = nItemIdx) and (ItemName.nMakeIndex = nMakeIdex) then begin
Application.MessageBox('此物品已经自定义过名称了!!!', '提示信息', MB_OK + MB_ICONERROR);
Exit;
end;
end;
New(ItemName);
ItemName.nItemIndex := nItemIdx;
ItemName.nMakeIndex := nMakeIdex;
ItemName.sItemName := sNewName;
ItemUnit.m_ItemNameList.Insert(0, ItemName);
finally
ItemUnit.m_ItemNameList.UnLock;
end;
ItemUnit.SaveCustomItemName();
RefItemCustomNameList();
end;
procedure TfrmViewList.ButtonItemNameModClick(Sender: TObject);
var
nSelIndex: Integer;
nMakeIdex: Integer;
nItemIdx: Integer;
sNewName: string;
ItemName: pTItemName;
begin
nItemIdx := EditItemNameIdx.Value;
nMakeIdex := EditItemNameMakeIndex.Value;
sNewName := Trim(EditItemNameNewName.Text);
nSelIndex := GridItemNameList.Row - 1;
if nSelIndex < 0 then Exit;
ItemUnit.m_ItemNameList.Lock;
try
if nSelIndex >= ItemUnit.m_ItemNameList.Count then Exit;
ItemName := ItemUnit.m_ItemNameList.Items[nSelIndex];
ItemName.nItemIndex := nItemIdx;
ItemName.nMakeIndex := nMakeIdex;
ItemName.sItemName := sNewName;
finally
ItemUnit.m_ItemNameList.UnLock;
end;
ItemUnit.SaveCustomItemName();
RefItemCustomNameList();
end;
procedure TfrmViewList.ButtonItemNameDelClick(Sender: TObject);
var
ItemName: pTItemName;
nSelIndex: Integer;
begin
nSelIndex := GridItemNameList.Row - 1;
if nSelIndex < 0 then Exit;
ItemUnit.m_ItemNameList.Lock;
try
if nSelIndex >= ItemUnit.m_ItemNameList.Count then Exit;
ItemName := ItemUnit.m_ItemNameList.Items[nSelIndex];
DisPose(ItemName);
ItemUnit.m_ItemNameList.Delete(nSelIndex);
finally
ItemUnit.m_ItemNameList.UnLock;
end;
ItemUnit.SaveCustomItemName();
RefItemCustomNameList();
end;
procedure TfrmViewList.ButtonItemNameRefClick(Sender: TObject);
begin
RefItemCustomNameList();
end;
procedure TfrmViewList.ListBoxitemList4Click(Sender: TObject);
begin
if not boOpened then Exit;
if ListBoxitemList4.ItemIndex >= 0 then
ButtonSellOffAdd.Enabled := True;
end;
procedure TfrmViewList.ButtonSellOffDelClick(Sender: TObject);
begin
if ListBoxSellOffList.ItemIndex >= 0 then begin
ListBoxSellOffList.Items.Delete(ListBoxSellOffList.ItemIndex);
ModValue();
end;
if ListBoxSellOffList.ItemIndex < 0 then
ButtonSellOffDel.Enabled := False;
end;
procedure TfrmViewList.ListBoxSellOffListClick(Sender: TObject);
begin
if not boOpened then Exit;
if ListBoxSellOffList.ItemIndex >= 0 then
ButtonSellOffDel.Enabled := True;
end;
procedure TfrmViewList.ButtonSellOffAddAllClick(Sender: TObject);
var
i: Integer;
begin
ListBoxSellOffList.Items.Clear;
for i := 0 to ListBoxitemList4.Items.Count - 1 do begin
ListBoxSellOffList.Items.Add(ListBoxitemList4.Items.Strings[i]);
end;
ModValue();
end;
procedure TfrmViewList.ButtonSellOffDelAllClick(Sender: TObject);
begin
ListBoxSellOffList.Items.Clear;
ButtonSellOffDelAll.Enabled := False;
ModValue();
end;
procedure TfrmViewList.ButtonSellOffSaveClick(Sender: TObject);
var
i: Integer;
sItemIdx: string;
begin
g_AllowSellOffItemList.Lock;
try
g_AllowSellOffItemList.Clear;
for i := 0 to ListBoxSellOffList.Items.Count - 1 do begin
g_AllowSellOffItemList.Add(Trim(ListBoxSellOffList.Items.Strings[i]));
end;
finally
g_AllowSellOffItemList.UnLock;
end;
SaveAllowSellOffItemList();
uModValue();
end;
procedure TfrmViewList.ButtonSellOffAddClick(Sender: TObject);
var
i: Integer;
begin
if ListBoxite
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -