给视图创建t-code

要想给一个视图创建一个TCODE ,可以使用SE93,步骤如下:

一、SE93输入TCODE名称,在开始对象里(START OBJECT)选择最后一个(PARAMETER TRANSACTION)。

二、 默认值(Default values )--- 事务( Transaction )下输入事务代码'SM30'或SE16,事务码取决于你的视图类型,并且选中复选框'Skip Initial Screen'.
3. 滚动条拉动到最下面那个TABLE CONTROL,在屏幕字段名称(Name of screen field)下 选择VIEWNAME或DATABOWSE-TABLENAME,这个选项也取决于你的视图类型,值为你的视图名称,同样的再添加一条纪录Name of screen field 选择UPDATE,值为'X'。
4. 保存事务代码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是创建MFC视图模式封装第三方ocx VSFlexGrid的例子: 1. 首先,将VSFlexGrid.ocx文件复制到项目目录下的res文件夹中。 2. 在VC6中创建一个MFC应用程序,选择视图模式(View-based)。 3. 在资源视图中,右键单击资源文件夹,选择添加->资源,选择OCX文件类型,然后选择VSFlexGrid.ocx文件并将其添加到资源文件夹中。 4. 在类向导中添加一个新类,选择视图类型,名称为CVSFlexGridView,基类为CView。 5. 在CVSFlexGridView的头文件中添加以下代码: ```cpp #include "afxwin.h" #include "afxcmn.h" #include "afxdisp.h" class CVSFlexGridView : public CView { protected: CVSFlexGridView(); DECLARE_DYNCREATE(CVSFlexGridView) // Attributes public: COleDispatchDriver m_vsfg; // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CVSFlexGridView) public: virtual void OnDraw(CDC* pDC); // overridden to draw this view virtual BOOL PreCreateWindow(CREATESTRUCT& cs); protected: virtual void OnInitialUpdate(); // called first time after construct //}}AFX_VIRTUAL // Implementation protected: virtual ~CVSFlexGridView(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif // Generated message map functions protected: //{{AFX_MSG(CVSFlexGridView) afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ``` 6. 在CVSFlexGridView的实现文件中添加以下代码: ```cpp // CVSFlexGridView.cpp : implementation of the CVSFlexGridView class // #include "stdafx.h" #include "VSFlexGrid.h" #include "VSFlexGridView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CVSFlexGridView IMPLEMENT_DYNCREATE(CVSFlexGridView, CView) BEGIN_MESSAGE_MAP(CVSFlexGridView, CView) //{{AFX_MSG_MAP(CVSFlexGridView) ON_WM_CREATE() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CVSFlexGridView construction/destruction CVSFlexGridView::CVSFlexGridView() { // TODO: add construction code here } CVSFlexGridView::~CVSFlexGridView() { } BOOL CVSFlexGridView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CView::PreCreateWindow(cs); } ///////////////////////////////////////////////////////////////////////////// // CVSFlexGridView drawing void CVSFlexGridView::OnDraw(CDC* pDC) { CDocument* pDoc = GetDocument(); // TODO: add draw code here } ///////////////////////////////////////////////////////////////////////////// // CVSFlexGridView diagnostics #ifdef _DEBUG void CVSFlexGridView::AssertValid() const { CView::AssertValid(); } void CVSFlexGridView::Dump(CDumpContext& dc) const { CView::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CVSFlexGridView message handlers void CVSFlexGridView::OnInitialUpdate() { CView::OnInitialUpdate(); // Create OLE dispatch driver m_vsfg.CreateDispatch(_T("VSFlexGrid.VSFlexGrid.7")); // Set VSFlexGrid properties m_vsfg.SetVisible(TRUE); m_vsfg.SetBackColor(RGB(255, 255, 255)); m_vsfg.SetForeColor(RGB(0, 0, 0)); // Set VSFlexGrid position and size CRect rect; GetClientRect(&rect); m_vsfg.MoveWindow(&rect); // Set VSFlexGrid column headers m_vsfg.SetCols(3); m_vsfg.SetColWidth(0, 1000); m_vsfg.SetColWidth(1, 1000); m_vsfg.SetColWidth(2, 1000); m_vsfg.SetTextMatrix(0, 0, _T("Column 1")); m_vsfg.SetTextMatrix(0, 1, _T("Column 2")); m_vsfg.SetTextMatrix(0, 2, _T("Column 3")); // Set VSFlexGrid rows m_vsfg.SetRows(3); m_vsfg.SetTextMatrix(1, 0, _T("Row 1, Col 1")); m_vsfg.SetTextMatrix(1, 1, _T("Row 1, Col 2")); m_vsfg.SetTextMatrix(1, 2, _T("Row 1, Col 3")); m_vsfg.SetTextMatrix(2, 0, _T("Row 2, Col 1")); m_vsfg.SetTextMatrix(2, 1, _T("Row 2, Col 2")); m_vsfg.SetTextMatrix(2, 2, _T("Row 2, Col 3")); } int CVSFlexGridView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; return 0; } ``` 7. 在MainFrm.h头文件中添加以下代码: ```cpp #include "VSFlexGridView.h" ``` 8. 在MainFrm.cpp文件中的Create函数中添加以下代码: ```cpp m_wndVSFlexGridView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW, CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL); pContext->m_pNewViewClass = RUNTIME_CLASS(CVSFlexGridView); ``` 9. 编译并运行程序,可以看到一个带有VSFlexGrid控件的视图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值