nim_duilib/samples/richlist/item.cpp

41 lines
1.1 KiB
C++
Raw Normal View History

2019-04-19 17:19:57 +08:00
#include "stdafx.h"
#include "item.h"
Item::Item()
{
}
Item::~Item()
{
}
void Item::InitSubControls(const std::wstring& img, const std::wstring& title)
{
// <20><><EFBFBD><EFBFBD> Item <20>µĿؼ<C4BF>
control_img_ = dynamic_cast<ui::Control*>(FindSubControl(L"control_img"));
label_title_ = dynamic_cast<ui::Label*>(FindSubControl(L"label_title"));
progress_ = dynamic_cast<ui::Progress*>(FindSubControl(L"progress"));
btn_del_ = dynamic_cast<ui::Button*>(FindSubControl(L"btn_del"));
// ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
auto timestamp = shared::tools::GenerateTimeStamp();
int64_t timestamp_num = 0;
nbase::StringToInt64(timestamp, &timestamp_num);
progress_->SetValue((double)(timestamp_num % 100));
// <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
control_img_->SetBkImage(img);
label_title_->SetText(nbase::StringPrintf(L"%s %d%%", title.c_str(), timestamp_num % 100));
// <20><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
btn_del_->AttachClick(nbase::Bind(&Item::OnRemove, this, std::placeholders::_1));
}
bool Item::OnRemove(ui::EventArgs* args)
{
ui::ListBox* parent = dynamic_cast<ui::ListBox*>(this->GetParent());
return parent->Remove(this);
}