bool cgUILineEdit::OnPaste() { // 如果是密码控件,则不可粘贴 if (m_enmType == enmUIEditType_Password) return true; ClearSel(); if( !::OpenClipboard(NULL) ) return true; #ifdef UNICODE HANDLE handle = ::GetClipboardData(CF_UNICODETEXT); #else HANDLE handle = ::GetClipboardData(CF_TEXT); #endif if (handle) { LPCTSTR lpctMem = (LPCTSTR)::GlobalLock(handle); Insert(lpctMem); ::GlobalUnlock(handle); } ::CloseClipboard(); return true; }
bool cgUILineEdit::OnChar( unsigned wparam, unsigned lparam ) { if(!IsPrintableWord(wparam)) return false; ClearSel();// 清空选中项 if (!InsertChar(wparam)) return false; ReportUIEvent(cgUIEvent_OnTextChange); return true; }
bool cgUILineEdit::OnCut() { // 如果是密码控件,则不可剪切,消息吃掉 if (m_enmType == enmUIEditType_Password) return true; OnCopy(); ClearSel(); ReportUIEvent(cgUIEvent_OnTextChange); ReportDirty(); return true; }
void Cmd() { cIpmiMsg msg( eIpmiNetfnStorage, eIpmiCmdAddSelEntry ); msg.m_data[0] = 0; msg.m_data[1] = 0; msg.m_data[2] = 0xc0; msg.m_data[3] = 0; msg.m_data[4] = 0; msg.m_data[5] = 0; msg.m_data[6] = 0; msg.m_data[7] = 1; msg.m_data[8] = 2; msg.m_data[9] = 3; msg.m_data[10] = 0; msg.m_data[11] = 0; msg.m_data[12] = 0; msg.m_data[13] = 0; msg.m_data[14] = 0; msg.m_data[15] = 0; msg.m_data_len = 16; cIpmiMsg rsp; lock.ReadLock(); for( int i = 0; i < 10; i++ ) { int rv = SendCommand( msg, rsp ); if ( rv || rsp.m_data[0] ) { lock.ReadUnlock(); ClearSel(); lock.ReadLock(); } } lock.ReadUnlock(); }