本文整理汇总了C++中CDuiString::Replace方法的典型用法代码示例。如果您正苦于以下问题:C++ CDuiString::Replace方法的具体用法?C++ CDuiString::Replace怎么用?C++ CDuiString::Replace使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CDuiString
的用法示例。
在下文中一共展示了CDuiString::Replace方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PaintStatusImage
void CComboBoxUI::PaintStatusImage(HDC hDC)
{
if (m_sArrowImage.IsEmpty())
CComboUI::PaintStatusImage(hDC);
else
{
// get index
if( IsFocused() ) m_uButtonState |= UISTATE_FOCUSED;
else m_uButtonState &= ~ UISTATE_FOCUSED;
if( !IsEnabled() ) m_uButtonState |= UISTATE_DISABLED;
else m_uButtonState &= ~ UISTATE_DISABLED;
int nIndex = 0;
if ((m_uButtonState & UISTATE_DISABLED) != 0)
nIndex = 4;
else if ((m_uButtonState & UISTATE_PUSHED) != 0)
nIndex = 2;
else if ((m_uButtonState & UISTATE_HOT) != 0)
nIndex = 1;
else if ((m_uButtonState & UISTATE_FOCUSED) != 0)
nIndex = 3;
// make modify string
CDuiString sModify = m_sArrowImage;
int nPos1 = sModify.Find(_T("source"));
int nPos2 = sModify.Find(_T("'"), nPos1 + 7);
if (nPos2 == -1) return; //first
int nPos3 = sModify.Find(_T("'"), nPos2 + 1);
if (nPos3 == -1) return; //second
CDuiRect rcBmpPart;
LPTSTR lpszValue = NULL;
rcBmpPart.left = _tcstol(sModify.GetData() + nPos2 + 1, &lpszValue, 10); ASSERT(lpszValue);
rcBmpPart.top = _tcstol(lpszValue + 1, &lpszValue, 10); ASSERT(lpszValue);
rcBmpPart.right = _tcstol(lpszValue + 1, &lpszValue, 10); ASSERT(lpszValue);
rcBmpPart.bottom = _tcstol(lpszValue + 1, &lpszValue, 10); ASSERT(lpszValue);
m_nArrowWidth = rcBmpPart.GetWidth() / 5;
rcBmpPart.left += nIndex * m_nArrowWidth;
rcBmpPart.right = rcBmpPart.left + m_nArrowWidth;
CDuiRect rcDest(0, 0, m_rcItem.right - m_rcItem.left, m_rcItem.bottom - m_rcItem.top);
rcDest.Deflate(GetBorderSize(), GetBorderSize());
rcDest.left = rcDest.right - m_nArrowWidth;
CDuiString sSource = sModify.Mid(nPos1, nPos3 + 1 - nPos1);
CDuiString sReplace;
sReplace.SmallFormat(_T("source='%d,%d,%d,%d' dest='%d,%d,%d,%d'"),
rcBmpPart.left, rcBmpPart.top, rcBmpPart.right, rcBmpPart.bottom,
rcDest.left, rcDest.top, rcDest.right, rcDest.bottom);
sModify.Replace(sSource, sReplace);
// draw image
if (!DrawImage(hDC, m_sArrowImage, sModify))
m_sNormalImage.Empty();
}
}
示例2: ApplyAttributeList
CControlUI* CControlUI::ApplyAttributeList(LPCTSTR pstrValue)
{
// ½âÎöÑùʽ±í
if(m_pManager != NULL) {
LPCTSTR pStyle = m_pManager->GetStyle(pstrValue);
if( pStyle != NULL) {
return ApplyAttributeList(pStyle);
}
}
CDuiString sXmlData = pstrValue;
sXmlData.Replace(_T("""), _T("\""));
LPCTSTR pstrList = sXmlData.GetData();
// ½âÎöÑùʽÊôÐÔ
CDuiString sItem;
CDuiString sValue;
while( *pstrList != _T('\0') ) {
sItem.Empty();
sValue.Empty();
while( *pstrList != _T('\0') && *pstrList != _T('=') ) {
LPTSTR pstrTemp = ::CharNext(pstrList);
while( pstrList < pstrTemp) {
sItem += *pstrList++;
}
}
ASSERT( *pstrList == _T('=') );
if( *pstrList++ != _T('=') ) return this;
ASSERT( *pstrList == _T('\"') );
if( *pstrList++ != _T('\"') ) return this;
while( *pstrList != _T('\0') && *pstrList != _T('\"') ) {
LPTSTR pstrTemp = ::CharNext(pstrList);
while( pstrList < pstrTemp) {
sValue += *pstrList++;
}
}
ASSERT( *pstrList == _T('\"') );
if( *pstrList++ != _T('\"') ) return this;
SetAttribute(sItem, sValue);
if( *pstrList++ != _T(' ') && *pstrList++ != _T(',') ) return this;
}
return this;
}
示例3: InitWindow
void MessageBoxWhd::InitWindow()
{
CLabelUI* pLbl = NULL;
CControlUI* pCtl = NULL;
if (m_uType == Info)
{
pLbl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("lab_msg_info")));
pCtl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("ctl_msg_info")));
}
else if (m_uType == Warn)
{
pLbl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("lab_msg_warn")));
pCtl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("ctl_msg_warn")));
}
else if (m_uType == Error)
{
pLbl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("lab_msg_error")));
pCtl = static_cast<CLabelUI*> (m_PaintManager.FindControl(_T("ctl_msg_error")));
}
pLbl->SetVisible(true);
pCtl->SetVisible(true);
std::stringstream ss;
ss<<"lbl_msg_"<<m_uMsgCode;
CLabelUI* pTextUI = static_cast<CLabelUI*> (m_PaintManager.FindControl(Base::CharacterSet::ANSIToUnicode(ss.str()).c_str()));
if (pTextUI)
{
pTextUI->SetVisible(true);
if (!m_dstrExMsg.IsEmpty())
{
CDuiString theMsg = pTextUI->GetText();
theMsg.Replace(_T("$"), m_dstrExMsg);
pTextUI->SetText(theMsg);
}
}
}
示例4: SetAttribute
//.........这里部分代码省略.........
else if( _tcsicmp(pstrName, _T("bordersize")) == 0 ) {
CDuiString nValue = pstrValue;
if(nValue.Find(',') < 0) {
SetBorderSize(_ttoi(pstrValue));
RECT rcPadding = {0};
SetBorderSize(rcPadding);
}
else {
RECT rcPadding = { 0 };
LPTSTR pstr = NULL;
rcPadding.left = _tcstol(pstrValue, &pstr, 10); ASSERT(pstr);
rcPadding.top = _tcstol(pstr + 1, &pstr, 10); ASSERT(pstr);
rcPadding.right = _tcstol(pstr + 1, &pstr, 10); ASSERT(pstr);
rcPadding.bottom = _tcstol(pstr + 1, &pstr, 10); ASSERT(pstr);
SetBorderSize(rcPadding);
}
}
else if( _tcsicmp(pstrName, _T("leftbordersize")) == 0 ) SetLeftBorderSize(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("topbordersize")) == 0 ) SetTopBorderSize(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("rightbordersize")) == 0 ) SetRightBorderSize(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("bottombordersize")) == 0 ) SetBottomBorderSize(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("borderstyle")) == 0 ) SetBorderStyle(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("borderround")) == 0 ) {
SIZE cxyRound = { 0 };
LPTSTR pstr = NULL;
cxyRound.cx = _tcstol(pstrValue, &pstr, 10); ASSERT(pstr);
cxyRound.cy = _tcstol(pstr + 1, &pstr, 10); ASSERT(pstr);
SetBorderRound(cxyRound);
}
else if( _tcsicmp(pstrName, _T("bkimage")) == 0 ) SetBkImage(pstrValue);
else if( _tcsicmp(pstrName, _T("foreimage")) == 0 ) SetForeImage(pstrValue);
else if( _tcsicmp(pstrName, _T("width")) == 0 ) SetFixedWidth(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("height")) == 0 ) SetFixedHeight(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("minwidth")) == 0 ) SetMinWidth(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("minheight")) == 0 ) SetMinHeight(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("maxwidth")) == 0 ) SetMaxWidth(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("maxheight")) == 0 ) SetMaxHeight(_ttoi(pstrValue));
else if( _tcsicmp(pstrName, _T("name")) == 0 ) SetName(pstrValue);
else if( _tcsicmp(pstrName, _T("drag")) == 0 ) SetDragEnable(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("drop")) == 0 ) SetDropEnable(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("resourcetext")) == 0 ) SetResourceText(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("text")) == 0 ) SetText(pstrValue);
else if( _tcsicmp(pstrName, _T("tooltip")) == 0 ) SetToolTip(pstrValue);
else if( _tcsicmp(pstrName, _T("userdata")) == 0 ) SetUserData(pstrValue);
else if( _tcsicmp(pstrName, _T("enabled")) == 0 ) SetEnabled(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("mouse")) == 0 ) SetMouseEnabled(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("keyboard")) == 0 ) SetKeyboardEnabled(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("visible")) == 0 ) SetVisible(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("float")) == 0 ) SetFloat(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("shortcut")) == 0 ) SetShortcut(pstrValue[0]);
else if( _tcsicmp(pstrName, _T("menu")) == 0 ) SetContextMenuUsed(_tcsicmp(pstrValue, _T("true")) == 0);
else if( _tcsicmp(pstrName, _T("cursor")) == 0 && pstrValue) {
if( _tcsicmp(pstrValue, _T("arrow")) == 0 ) SetCursor(DUI_ARROW);
else if( _tcsicmp(pstrValue, _T("ibeam")) == 0 ) SetCursor(DUI_IBEAM);
else if( _tcsicmp(pstrValue, _T("wait")) == 0 ) SetCursor(DUI_WAIT);
else if( _tcsicmp(pstrValue, _T("cross")) == 0 ) SetCursor(DUI_CROSS);
else if( _tcsicmp(pstrValue, _T("uparrow")) == 0 ) SetCursor(DUI_UPARROW);
else if( _tcsicmp(pstrValue, _T("size")) == 0 ) SetCursor(DUI_SIZE);
else if( _tcsicmp(pstrValue, _T("icon")) == 0 ) SetCursor(DUI_ICON);
else if( _tcsicmp(pstrValue, _T("sizenwse")) == 0 ) SetCursor(DUI_SIZENWSE);
else if( _tcsicmp(pstrValue, _T("sizenesw")) == 0 ) SetCursor(DUI_SIZENESW);
else if( _tcsicmp(pstrValue, _T("sizewe")) == 0 ) SetCursor(DUI_SIZEWE);
else if( _tcsicmp(pstrValue, _T("sizens")) == 0 ) SetCursor(DUI_SIZENS);
else if( _tcsicmp(pstrValue, _T("sizeall")) == 0 ) SetCursor(DUI_SIZEALL);
else if( _tcsicmp(pstrValue, _T("no")) == 0 ) SetCursor(DUI_NO);
else if( _tcsicmp(pstrValue, _T("hand")) == 0 ) SetCursor(DUI_HAND);
}
else if( _tcsicmp(pstrName, _T("virtualwnd")) == 0 ) SetVirtualWnd(pstrValue);
else if( _tcsicmp(pstrName, _T("innerstyle")) == 0 ) {
CDuiString sXmlData = pstrValue;
sXmlData.Replace(_T("""), _T("\""));
LPCTSTR pstrList = sXmlData.GetData();
CDuiString sItem;
CDuiString sValue;
while( *pstrList != _T('\0') ) {
sItem.Empty();
sValue.Empty();
while( *pstrList != _T('\0') && *pstrList != _T('=') ) {
LPTSTR pstrTemp = ::CharNext(pstrList);
while( pstrList < pstrTemp) {
sItem += *pstrList++;
}
}
ASSERT( *pstrList == _T('=') );
if( *pstrList++ != _T('=') ) return;
ASSERT( *pstrList == _T('\"') );
if( *pstrList++ != _T('\"') ) return;
while( *pstrList != _T('\0') && *pstrList != _T('\"') ) {
LPTSTR pstrTemp = ::CharNext(pstrList);
while( pstrList < pstrTemp) {
sValue += *pstrList++;
}
}
ASSERT( *pstrList == _T('\"') );
if( *pstrList++ != _T('\"') ) return;
SetAttribute(sItem, sValue);
if( *pstrList++ != _T(' ') && *pstrList++ != _T(',') ) return;
}
}
}