2702

GetDlgItem 有两种形式, 1.GetDlgItem(int nID) 2. GetDlgItem(int nID, HWND* phWnd)

winocc.cpp
文件里, GetDlgItem 的原型为:
CWnd* CWnd::GetDlgItem(int nID) const
{
ASSERT(::IsWindow(m_hWnd));

if (m_pCtrlCont == NULL)
return CWnd::FromHandle(::GetDlgItem(m_hWnd, nID));//
这里的 m_hWnd nID 位置是不是反了的?
else
return m_pCtrlCont->GetDlgItem(nID);
}
GetDlgItem(int nID, HWND* phWnd)
的原型为:
void CWnd::GetDlgItem(int nID, HWND* phWnd) const
{
ASSERT(::IsWindow(m_hWnd));
ASSERT(phWnd != NULL);

if (m_pCtrlCont == NULL)
*phWnd = ::GetDlgItem(m_hWnd, nID);
else
m_pCtrlCont->GetDlgItem(nID, phWnd);
}

这里有一个疑问, GetDlgItem(int nID) 里调用 GetDlgItem(m_hWnd, nID) ,这里的 m_hWnd nID 位置是不是反了的?

 

::GetDlgItem(m_hWnd, nID); 
前面有 :: 全局域作用符,表示调用的是 API
GetDlgItem(int nID, HWND* phWnd)
CWnd 类封装的类函数

 

 

CListCtrl::GetItemPosition

BOOL   GetItemPosition(int   nItem,LPPOINT   lpPoint)   const

返回值:如果成功,则返回非零值,否则为 0

参数:   nItem   要获取位置的项的索引值。    
lpPoint  
在视图坐标中接受项左上角位置 POINT 结构的地址,按视图坐标。    

说明:获取列表视图项的位置。
//////////////////////////////////////////////////////////////
CListCtrl::GetItemRect

BOOL   GetItemRect(int   nItem,LPRECT   lpRect,UNIT   nCode)   const

返回值:如果成功,则返回非零值,否则为 0

参数:   nItem   要获取位置的项的索引值。    
lpRect  
接受绑定矩形的 RECT 结构的地址。    
nCode  
要获取绑定矩形的列表视图项的部分。它可为下列值之一:   ·   LVIR_BOUNDS   返回整个项的绑定矩形,包括图标和标签。    
·   LVIR_ICON  
返回图标或小图标的绑定矩形。    
·   LVIR_LABEL  
返回项文本的绑定矩形。    
 

说明:
在当前视图中获取某项的全部或部分的绑定矩形。

 

POSITION pos = m_clistctrl .GetFirstSelectedItemPosition();
if(pos!=NULL)
{
 int Item = m_clistctrl .GetNextSelectedItem(pos);
 CString listval= m_clistctrl .GetItemText(Item,1);
}
注意GetItemText
()的用法,获取第几列,在后面输入数字是几
 
 
 
POSITION pos = pList->GetFirstSelectedItemPosition();   

  if (pos == NULL)  

  TRACE0("No items were selected!/n");  

  else  

  {  

  while (pos)  

  {  

  int nItem = pList->GetNextSelectedItem(pos);  

  TRACE1("Item %d was selected!/n", nItem);  

  // you could do your own processing on nItem here  

  }  

  }
 
 
m_list.GetSafeHwnd()
有效???
 
 
 
POSITION   pos   =   pList-> GetFirstSelectedItemPosition(); 

if   (pos   ==   NULL)

      TRACE0( "No   items   were   selected!/n ");

else

{

      while   (pos)

      {

            int   nItem   =   pList-> GetNextSelectedItem(pos);

            TRACE1( "Item   %d   was   selected!/n ",   nItem);

            //   you   could   do   your   own   processing   on   nItem   here

      }

}
 
GetNextItem(-1,LVNI_SELECTED)
获得当前选择的行

 

 

int iItem = -1;
CString cCurStr;
iItem = m_ctlList.GetSelectionMark();
cCurStr = m_ctlList.GetItemText(iItem,0);
  ……

 
调用 GetItemText 得到所有列的数据,然后作为参数传递给函数

 

// 获取选中的行号 .
int i=m_list.GetNextItem(-1,LVNI_SELECTED);
if(-1==i)
{
  return;
}
else
{
//
根据列表控件被选中的行号来获取并操作该行的信息。  
}

 

响应列表控件控件的单击函数
LVHITTESTINFO info;
info.pt=point; //point
鼠标所在点的坐标
info.flags=LVHT_ONITEMLABEL;
//SubItemHitTest(&info)
用来取得鼠标点击的所在行列
if(listctrl.SubItemHitTest(&info)>=0){
row=info.iItem;//

col=info.iSubItem;//


}

关于WCS2702的技术信息或错误代码,在当前提供的引用内容中并未直接提及该特定错误代码的相关描述。然而,可以从一般性的角度分析可能涉及的内容和技术解决方案。 ### WCS2702 可能关联的技术背景 #### 1. **Session管理与共享** 如果假设WCS2702是一个与会话(Session)管理相关的错误代码,则可以参考以下几种常见的解决方法来处理同一服务下集群环境中的Session共享问题以及跨服务间的Session不一致问题: - 使用Session复制机制实现集群内的Session同步[^1]。 - 利用哈希一致性算法分配请求到相同的节点上以保持Session状态的一致性。 - 将Session数据存储至集中化的外部存储介质(如Redis、Memcached),从而支持多实例间的数据共享。 对于不同服务之间无法共享Session的情况,通常需要重新设计认证授权流程或者采用Token-based的身份验证方式替代传统的Server-side Session模式。 #### 2. **电源适配器规格** 虽然上述讨论集中在软件层面的Session管理方面,但如果考虑硬件设备上的可能性,比如某些工业控制单元或其他嵌入式系统的运行条件,那么也可能涉及到电力供应的要求。例如,某款产品出厂默认设置为(220±20)VAC/50Hz的工作电压范围;而另一种情况则可能是(115±5)VAC/60Hz,并且后者需由用户自行调整配置才能正常使用[^2]。尽管这看起来似乎不太可能直接对应于所谓的"WCS2702"定义,但它提醒我们注意实际部署环境中各种物理参数的影响。 #### 3. **接口定义和服务框架** 最后一点值得注意的是有关某个具体命名空间及其内部成员声明的例子——即`Microsoft.IService`下的抽象契约说明[^3]。这里展示了一个典型的面向对象程序设计风格的服务类模板,其中包含了几个基本操作函数原型:启动(`Start`)、新增订单记录(`AddOrder`)及结束事务处理(`End`)等功能模块。假如说存在某种异常状况被标记为此处提到过的编号"wcs2702", 那么它或许就代表违反这些预设规则的行为之一, 或者是在执行过程中遇到未预料情形所触发的结果反馈. 综上所述,WCS2702确切含义仍待进一步确认但从已知资料推测其大概率属于某一类别之下较为特殊的案例表现形式而已. ```csharp // 示例代码片段演示如何实现IService_T1 接口 using System; namespace Microsoft.IService { public class ServiceImplementation : IService_T1 { public void Start() { Console.WriteLine("Service started."); } public int AddOrder(Order order) { // 假定此处有业务逻辑... return new Random().Next(); } public void End() { Console.WriteLine("Service ended."); } } public struct Order { public string Id; public DateTime CreatedAt; public override string ToString(){ return $"Order ID:{Id}, Created At:{CreatedAt}"; } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值