Subject |
Author |
Date |
|
Barbara Roth
|
Jun 25, 2008 - 9:46 AM
|
I do not get the WM_ENTERSIZEMOVE or WM_EXITSIZEMOVE notification messages when using the
CExtNCW < CMDIChildWnd > class?
|
|
Richard Rodruck
|
Jun 24, 2008 - 7:19 PM
|
If you derive an MDIChildFrame with CExtNCW and use the office 2007 theme, the client area of the mainframe does not paint correctly if you maximize the child frame and then unmaximize it. You can see this in the MDI sample where the border around the client area disappears if you do this. If you resize the main frame while the child winow is open or open another child window it stops doing this. It does not appear to do this in non office 2007 themes.
|
|
Offer Har
|
Jun 24, 2008 - 10:17 AM
|
|
|
howard liu
|
Jun 24, 2008 - 7:29 AM
|
Hi, clicking on a particular menu option of the user interface (of my application) leads to a secondary (child) interface. The parent interface and the child interface have independent menu bars and tool bars. But after creating the child interface, from being within the parent interface, and when i click on the menu bar of the child interface, the menu bar of the child interface gets automatically updated with the menu bar items present in the parent interface. This happens after applying Prof-UI over the parent and child interface. The vice versa also happens, after creating the child interface (from within the parent interface) and when i click over the parent interface, the menu bar in the parent interface gets updated with the menu items present in the child menu frame Is it possible to avoid this scenario Thanks, Howard
|
|
Technical Support
|
Jun 26, 2008 - 1:03 PM
|
There must be only one instance of the CExtMenuControlBar window in scope of one profile in the command manager. If you have the main MDI frame window with its command profile and menu bar and you want to create another menu bar in some other window in your application (MDI child window or popup dialog window), you should initialize one more command profiles in the command manager and attach it to the window which contains the second menu bar.
|
|
howard liu
|
Jul 2, 2008 - 1:14 AM
|
It solved the problem, thanks for this support
|
|
howard liu
|
Jun 24, 2008 - 7:12 AM
|
Hi, I have implemented prof-ui menu bars and prof-ui style advanced tool bars for the user interfaces of my application. When i right click on the empty non-client area near the menu bar or the advanced tool bar, I get to see popup menu. I would like to remove or make invisible these popup menus in the non client area. Is this possible. Also i would like to hide the pop-up menu appearing from the click over the chevron buttons (near the arrows at the end) present on the advanced tool bars. Is it possible Thanks Howard
|
|
Technical Support
|
Jun 26, 2008 - 1:04 PM
|
To remove the window menu, you should override the following internal virtual method in your CExtMenuControlBar -derived class and simply return TRUE value instead of invoking the parent class method: virtual BOOL _TrackFrameSystemMenu(
CWnd * pFrame,
CPoint * pPoint = NULL, // NULL means calc menu track area automatically
BOOL bSelectAny = FALSE,
LPCRECT rcExcludeArea = NULL,
UINT nTrackFlags = (UINT)(-1),
BOOL bCombinedMode = FALSE
); You can also modify or remove any of built-in Prof-UIS popup menus, which is described here.
|
|
Offer Har
|
Jun 24, 2008 - 4:54 AM
|
Continuing my reported problems of how a combo-box is painted in 2.83, here are 3 more painting problems that should be rectified: 1) The width of the drop-down arrow and the scroll-bar are not the same. 2) The width of the drop list and the combo edit box are not the same 3) There is one pixel space between the edit-box and the drop-list All these, plus the problems I reported before, cause the combo-box to look very poor. We use the library to get a better gui... Below is a zoomed picture showing these 3 problems:
|
|
tera t
|
Jun 23, 2008 - 6:27 PM
|
|
|
tera t
|
Jul 2, 2008 - 6:08 PM
|
Please revise this defect
This is considerably troubled.
|
|
marc uchida
|
Jun 23, 2008 - 5:56 PM
|
I was having a problem with my tabbed tool bar. The OnUpdates did not seem to be called for the first page of my tabbed tool bar. Buttons here were not getting their state updated. I think I found the problem in the code for CExtTabbedToolControlBar::OnUpdateCmdUI(). void CExtTabbedToolControlBar::OnUpdateCmdUI(
CFrameWnd * pTarget,
BOOL bDisableIfNoHndler
)
{
CExtTabPageContainerWnd * pWndTabPageContainer = GetTabPageContainer();
if( pWndTabPageContainer == NULL )
return;
LONG nSel = pWndTabPageContainer->PageSelectionGet();
if( nSel <= 0 )
return; etc... I believe the check for nSel should be "if( nSel < 0 )" as page 0 should be valid as the first page. What do you folks think about this? regards
|
|
Technical Support
|
Jun 24, 2008 - 4:35 AM
|
Thank you for reporting this typo. It is now fixed in the source code.
|
|
Filippo Murroni
|
Jun 23, 2008 - 11:15 AM
|
I have a serious problem with MDI windows. I have found where is yhe problem, but I don’t Know how solve it... Description: - 2 MDI child actived - Window Rect of child "2" inside Window Rect of child "1" ( width 2 < width 1 and height 2 < height 1 ) - Focus on Win 2 - Click on maximize button in the caption of Win 1 - Win 1 restore - Move of Win 1 to see win 2 - WIN 2 WITHOUT CAPTION !!! The program works fine if I insert a Message Box, like in code below : void FAmsg_pump()
{
MSG toPeek;
while ( ::PeekMessage( &toPeek, NULL, 0, 0, PM_NOREMOVE ) ){
if ( !AfxGetApp()->PumpMessage( ) ){
break;
}
} }
void CChildFrame::OnSysCommand(UINT nID, LPARAM lParam)
{
CMainFrame* tMf=(CMainFrame*)AfxGetMainWnd();
if(nID==SC_MAXIMIZE)
{
if(tMf->MDIGetActive(NULL)!=this){
AfxMessageBox("Here something happens..");
CExtNCW < CMDIChildWnd>::MDIActivate();
FAmsg_pump();
}
} CExtNCW < CMDIChildWnd>::OnSysCommand(nID, lParam);
} Can you help me, please!!! Thanks a lot...
|
|
Filippo Murroni
|
Jun 25, 2008 - 1:04 AM
|
It’s possible to reproduce this problem using the sample "MDI_600", using CExtNCW < CMDIChildWnd> for the class "CChildFrame" and not only CMDIChildWnd !!! We have found a solution using : void CChildFrame::OnLButtonDown(UINT nFlags, CPoint point)
{
CWnd * pWndFrameImpl = (CWnd *)NcFrameImpl_GetFrameWindow();
CRect rcWnd;
pWndFrameImpl->GetWindowRect( &rcWnd );
CPoint pointWnd;
::GetCursorPos( &pointWnd );
pointWnd -= rcWnd.TopLeft();
if( m_rcNcFrameImpl_ScClose.PtInRect( pointWnd ) ){
m_nNcFrameImpl_ScTrackedButtonPressed = SC_CLOSE;
CExtNCW < CMDIChildWnd>::MDIActivate();
}else if( m_rcNcFrameImpl_ScMaximize.PtInRect( pointWnd ) ){
m_nNcFrameImpl_ScTrackedButtonPressed = SC_MAXIMIZE;
CExtNCW < CMDIChildWnd>::MDIActivate();
}else if( m_rcNcFrameImpl_ScMinimize.PtInRect( pointWnd ) ){
m_nNcFrameImpl_ScTrackedButtonPressed = SC_MINIMIZE;
CExtNCW < CMDIChildWnd>::MDIActivate();
} CMDIChildWnd::OnLButtonDown(nFlags, point);
}
|
|
Technical Support
|
Jun 24, 2008 - 4:33 AM
|
We tried to reproduce this problem using one our samples like DRAWCLI, MDI and MDIDOCVIEW but failed. Could you help us reproduce this problem? We believe it may have to do with specially handled messages of MDI interface in scope of your project.
|
|
Osmin Lazo
|
Jun 21, 2008 - 3:35 PM
|
Hi, I am using the method GridCellGetOuterAtLeft and ModifyStyle to set the style __EGCS_HDR_ROW_COLUMN_NUMBER in the outer cell. This works well when displaying rows even with the preview area being shown, I mean the row numbers show up correctly. However, if the user ’groups by’ any of the columns then the row numbers don’t seem to work correctly. It seems that even though the row number is not included in the outer cell belonging to the group header (the row that allows the user to collapse or expand it) the row number count is still being incremented such that; the next actual row will contain a value higher than it should be.
So the question is, is there anything else I need to do in order to have the row count to skip the Group row? Thanks in advanced...
|
|
Technical Support
|
Jun 22, 2008 - 1:38 PM
|
We do not see any reason to walk through tree rows and count something. All the painting virtual methods in grid cell and grid control classes have plain zero-based row/column numbers in parameters.
|
|
Technical Support
|
Jun 22, 2008 - 1:37 PM
|
Did you implement the CExtReportGridWnd::OnReportGridItemInitializeOuterCells() virtual method? The CExtReportGridWnd control re-initializes the group rows when the grouping rules has changed and implementing this virtual method allows you to initialize outer header cells in group rows. The source code of the original CExtReportGridWnd::OnReportGridItemInitializeOuterCells() virtual method does nothing but it contains some code that is commented out and that is very similar to what you need: void CExtReportGridWnd::OnReportGridItemInitializeOuterCells(
CExtReportGridItem * pRGI
)
{
ASSERT_VALID( this );
ASSERT_VALID( pRGI );
pRGI;
//LONG nIndex, nCount = OuterColumnCountLeftGet();
// for( nIndex = 0; nIndex < nCount; nIndex ++ )
// {
// CExtGridCell * pCell = ReportItemGetOuterColumnCell( nIndex, true, pRGI );
// ASSERT_VALID( pCell );
// if( nIndex == ( nCount - 1 ) )
// pCell->ModifyStyle( __EGCS_HDR_FOCUS_ARROW_RESERVE_SPACE|__EGCS_HDR_FOCUS_ARROW_DISPLAY );
// }
// nCount = OuterColumnCountRightGet();
// for( nIndex = 0; nIndex < nCount; nIndex ++ )
// {
// CExtGridCell * pCell = ReportItemGetOuterColumnCell( nIndex, false, pRGI );
// ASSERT_VALID( pCell );
// if( nIndex == 0 )
// pCell->ModifyStyle( __EGCS_HDR_FOCUS_ARROW_RESERVE_SPACE|__EGCS_HDR_FOCUS_ARROW_DISPLAY );
// }
}
|
|
Offer Har
|
Jun 21, 2008 - 4:41 PM
|
I had the same problem in tree grid - what I did was implement the numbering myself, and not use the __EGCS_HDR_ROW_COLUMN_NUMBER feature. The algorithm is not too complicated, just run over all rows when node collapsed/expends, and redraw the numbers.
|
|
Osmin Lazo
|
Jun 22, 2008 - 9:07 PM
|
The problem seems to be that the method OnFormatHeaderNumberString checks for the type of row before incrementing the count but there are only three types of rows, 0 - inner row, -1 - outer row at top, 1 - outer row at bottom. Since there is no row type constant for group rows the row is treated as a regular row and the count is ++ I guess I’ll follow Offer’s advice and try to implement this functionality somehow. Thanks everyone.
|
|
Offer Har
|
Jun 21, 2008 - 12:14 PM
|
I have an application that runs on a computer with 2 monitors set in Dual View mode. On the primary display, when the application is maximized all looks well. On the secondary display, 2 pixels are cut-off in all sides of the application when maximized.
|
|
Dominik Braendlin
|
Jun 20, 2008 - 1:16 AM
|
I have a CExtResizableDialog based dialog where I am trying to draw somthing into the boundaries of a group control. In order to paint I am using the following code snipped as found on your page: //--------------------------------------------------------------------------- LRESULT CLithoGroupEditDlg::WindowProc( UINT message, WPARAM wParam, LPARAM lParam ) { switch( message ) { case WM_PAINT: { CPaintDC dc( this ); DisplayGroupBitmap(&dc); return 0; } } return CExtResizableDialog::WindowProc( message, wParam, lParam ); } All works fine as long as I am not calling the SubclassChildControls in OnInitDialog. CExtResizableDialog::OnInitDialog(); ShowSizeGrip(FALSE); SubclassChildControls(); If I do this I cannot see my drawing within the group control anymore. I suggest that the group control somehow overlaps my painting because it may be drawn after my drawing. Do you have any suggestion how I could solve this issue. Thanks
|
|
Dominik Braendlin
|
Jun 23, 2008 - 5:09 AM
|
I have tested your suggestion and so far it seems to work.
Since I am using the Group Box only as a “picture frame” this new approach seems to me much more work than just copying my bitmap onto the background of that Group Box. I was wondering if there is an easier way that allows the Paint manager to do its thing such as painting the right background and then having me copying my bitmap on top of it. Since I do not need the whole WindowRect of the Group Box there is still that remaining excess space around it. With the new approach it seems to me that I have to provide a bitmap of the size of the WindowRect of the Group Box instead of the ClientRect or smaller.
|
|
Technical Support
|
Jun 22, 2008 - 1:16 PM
|
This approach can be used for repainting the background of a resizable dialog rather than the dialog’s controls. You should use the approach used in the TabbedBars sample application (inherited background painting). It’s possible to the paint background of some window, including a dialog, and the drawn background will be inherited by child windows. First of all, you should invoke the following code to turn the inherited background painting feature on: g_PaintManager->m_bCustomBackgroundInheritanceEnabled = true; This code should be invoked both at startup and after selection of a new paint manager. If the inherited background painting feature is turned on, the CExtPaintManager::g_nMsgPaintInheritedBackground message is sent to all the windows and allows you to paint a solid background shared between parent/children windows. This message is handled in the TabbedBars sample where you can turn on the a hurricane-like background in the main frame window and a consistent gradient background in dialog windows inserted as pages into a One Note tab page container window.
|
|
howard liu
|
Jun 19, 2008 - 11:16 PM
|
Hi, Is there any method or property by which we can remove the NCW template property to be removed in CExtNCW <CExtResizeableDialog> derived classes. I want to apply CExtNCW template in some derived classes and remove in other derived classes. Thanks
|
|
Technical Support
|
Jun 30, 2008 - 1:17 PM
|
If you don’t need a window border, then you should remove appropriate basic/extended window styles: WS_BORDER , WS_CAPTION , WS_EX_CLIENTEDGE , WS_EX_STATICEDGE , WS_EX_DLGMODALFRAME . Do not forget to specify the SWP_FRAMECHANGED value in the third parameter of the CWnd::ModifyStyle() and CWnd::ModifyStyleEx() methods.
|
|
howard liu
|
Jun 30, 2008 - 8:40 AM
|
Hi, I was able to remove the frame in ncw based derived classes but i was not able to remove the Border appearing over frame .how to achieve this.
|
|
Technical Support
|
Jun 22, 2008 - 1:10 PM
|
You can use any CExtNCW -based types and skin the non-client area optionally by assigning false to the CExtNcFrameImpl::m_bNcFrameImpl_IsEnabled property. Any CExtNCW -based class is derived from CExtNcFrameImpl . So, the m_bNcFrameImpl_IsEnabled property is available the in methods of a CExtNCW -based class.
|
|
Jae-Ho Lee
|
Jun 19, 2008 - 8:35 PM
|
Hello, I registered Pro- UIS Ver.2.83 in Yesterday. Do not install....... Integration Wiard to VS Studio 2005? (OS: window XP Service Pack3) I don’t understand this situation..... I check only two options: + Add Prof-UIS paths to Visual Studio environment variables for Win32 platform + Install Prof-UIS Application Wizard to Visual Studio. Result: Failed, Successed: X Add Prof-UIS paths to Visual Studio environment variables for Win32 platform /*******************************************************************/
REPORT FILE [6-20-2008, 9:24]
/*******************************************************************/ Remove Prof-UIS paths from Visual Studio environment variables for Win32 platform - Failed. Remove Prof-UIS Application Wizard from Visual Studio - Succeeded. dll is no compile..... so I don’t use Integration Wizard.. and dll solution compiled separately. compile error was so many ocured. these error wasn’t understand... Help me.. Please...
|
|
Technical Support
|
Jun 22, 2008 - 1:11 PM
|
We checked the integration and application wizards on Windows XP SP3 again. We used the English versions of Windows and Visual Studio. We guess the problem is somehow linked to a localized version of Windows and/or Visual Studio.
|
|
Kevin Murray
|
Jun 19, 2008 - 5:48 PM
|
I even tried this in your sample app, MDI_DynamicInnerOuterBars. In the CMainFrame::OnCreate I set CExtControlBar::g_bCloseOnlyOneBarInTabGroup to true. If I dock two windows in a tab group, click the close button on one of them, both go away.
Is there something more that has to be done to support this functionality? Kevin Murray
|
|
Technical Support
|
Jun 22, 2008 - 1:12 PM
|
We confirm this issue. It’s related to CExtDynamicControlBar control bars only. To fix it, please update the source code for the following method: void CExtDynamicControlBar::NcButtons_PostClick(
CExtBarNcAreaButton * pNcAreaButton,
CPoint point,
CExtControlBar * pBarEventSource,
CExtControlBar * pBarActiveInContainer
)
{
ASSERT_VALID( this );
#ifdef _DEBUG
if( pBarEventSource != NULL )
{
ASSERT_VALID( pNcAreaButton );
}
if( pBarEventSource != NULL )
{
ASSERT_VALID( pBarEventSource );
}
#endif // _DEBUG
if( (! IsCloseOnlyOneBarInTabGroup() ) && pNcAreaButton->IsKindOf( RUNTIME_CLASS(CExtBarNcAreaButtonClose) ) )
{
bool bIsVisible = false;
CExtDynamicControlBar::eDynamicBarState_t eDBS =
BarStateGet( &bIsVisible );
if( bIsVisible
&& ( eDBS == CExtDynamicControlBar::__EDBS_DOCKED || eDBS == CExtDynamicControlBar::__EDBS_FLOATING )
)
BarStateSet( eDBS, false );
}
CExtControlBar::NcButtons_PostClick( pNcAreaButton, point, pBarEventSource, pBarActiveInContainer );
}
|
|
Offer Har
|
Jun 19, 2008 - 12:35 PM
|
When you call m_edt.EnableWindow(FALSE); in 2.83, the text is gray on gray: I zoomed it so you’ll see that there is text there: Please fix.
|
|
Technical Support
|
Jul 2, 2008 - 6:03 AM
|
Unfortunately the text in disabled controls is always gray. Athough we process the CTLCOLOR_STATIC message to change the text color, this does not work unless the control is enabled. It seems this is a OS’s bug. As a workaround you can make the edit control READONLY rather than DISABLED .
|
|
Offer Har
|
Jul 7, 2008 - 6:49 AM
|
|
|
Technical Support
|
Jul 8, 2008 - 6:03 AM
|
As we mentioned it in our previous message this bug has nothing to do with Prof-UIS. The disabled text color cannot be changed. You can try making the edit background color’s lighter.
|
|
Offer Har
|
Jul 8, 2008 - 6:14 AM
|
Dear Support, When you disable a text box in a normal MFC application you can read the text Please look below (I’m sure you see the Ron text there...): But when you do it in a Prof-UIS you cannot see the ’Ron’ text, as I already explained and sent screen-shots above. THIS HAS NOTHING TO DO WITH WINDOWS - it has to do with the color schene you chose that makes read-only text seems invisible. Please fix - this is a bug in Prof-UIS
|
|
Technical Support
|
Jul 12, 2008 - 9:46 AM
|
Please update the source code for the CExtEditBase::CtlColor() method. After this update, disabled edit box background will become lighter and text will be visible well:
HBRUSH CExtEditBase::CtlColor( CDC* pDC, UINT nCtlColor )
{
ASSERT_VALID( this );
if( nCtlColor == CTLCOLOR_EDIT
|| nCtlColor == CTLCOLOR_MSGBOX
|| nCtlColor == CTLCOLOR_STATIC
)
{
bool bReadOnly = (GetStyle()&ES_READONLY) != 0;
bool bDisabled = OnQueryWindowEnabledState() ? false : true;
COLORREF clrText = GetTextColor();
if( clrText == COLORREF(-1L) )
{
COLORREF clrSysText =
PmBridge_GetPM()->GetColor(
bDisabled
? CExtPaintManager::CLR_TEXT_DISABLED
: COLOR_WINDOWTEXT,
this
);
clrText = clrSysText;
}
COLORREF clrBk = GetBkColor();
if( clrBk == COLORREF(-1L) )
{
COLORREF clrSysBk =
PmBridge_GetPM()->GetColor(
( bReadOnly || bDisabled )
? CExtPaintManager::CLR_3DFACE_OUT
: COLOR_WINDOW,
this
);
clrBk = clrSysBk;
}
pDC->SetBkColor( clrBk );
pDC->SetTextColor( clrText );
if( m_clrBackPrev != clrBk )
{
if( m_brBack.GetSafeHandle() != NULL )
m_brBack.DeleteObject();
m_brBack.CreateSolidBrush( clrBk );
m_clrBackPrev = clrBk;
}
return m_brBack;
}
else
return (HBRUSH)Default();
}
|
|
Offer Har
|
Jul 8, 2008 - 6:20 AM
|
P.S. Just to make sure, this is the code I added to a default dialog-based MFC application to make dialog: 1) Added an edit control IDC_EDIT1 to the main dialog resource. 2) Added a member: CEdit m_edt ; 3) Added DXX support to it: DDX_Control(pDX, IDC_EDIT1, m_edt); 4) Added these two lines in OnInitDialog :
m_edt.SetWindowText(L"Ron");
m_edt.EnableWindow(FALSE); Very simple
|
|
Offer Har
|
Jul 2, 2008 - 6:08 AM
|
Hi, I cannot use the READONLY , because I have a generic algorithm that disables all controls in a dialog regardless of their type. In previous versions this did work, and I did not do any changes to my OS... It was always black on gray, so how come it is not gray on gray? Please advise how can this be solved - isn’t there a way for me to set in the theme thet color of the text when disabled? or the back-ground of the control? there must be a way to fix this problem. Ron.
|
|
Oliver Rau
|
Jun 19, 2008 - 11:19 AM
|
Dear ProfUIS-Team,
based on your RibbonBarMDI demo under certain conditions there appear strange characters in the tooltip. This happens with a default WinXP installation when forcing a two-lined string (simply by inserting a "\n", e.g. "Clear\nformatting") within a large control item (see screenshot below). After having installed some more fonts the problem doesn’t occur any more. Could it be that you use a different font set than one of those being installed with a default WinXP installation? Or is there a workaround for the "\n" string separator?
Thanks in advance,
Martin
|
|
Technical Support
|
Jun 22, 2008 - 1:19 PM
|
Unfortunately, multiline caption strings are not supported. If we initialize tooltip caption text like this: pCmdScreenTip->CaptionMainSet( _T("Clear\nFormatting333") ); we get the following:
|
|
Phillip Bernard
|
Jun 19, 2008 - 8:36 AM
|
Hello. I create simple grid with 2 columns and 1 row.
Than I call GridCellJoinSet( CSize(1, 2), 0, 0); and than GridCellJoinSet( CSize(1, 1), 0, 0);
on painting this grid I get Assert at CExtGridWnd.cpp:2426 ... CSize _sizeRealJoin = OnGbwCellJoinQueryInfo( nRealColNo, nRealRowNo, nColType, nRowType );
CRect rcWalkExtent( 0, 0, 0, 0 );
if( sizeJoin.cx > 1 ) rcWalkExtent.right = sizeJoin.cx - 1; else if( sizeJoin.cx <= 0 ) { ASSERT( _sizeRealJoin.cx >= 1 ); ...
OnGbwCellJoinQueryInfo(...) retrun CSize(0, 1);
What I do wrong ?
|
|
Phillip Bernard
|
Jun 23, 2008 - 4:09 AM
|
I try
in OnInitDialog ... m_Grid.Create(this, CRect(201, 0, 400, 200)); m_Grid.SiwModifyStyle(__ESIS_STH_PIXEL|__ESIS_STV_PIXEL|__EGBS_GRIDLINES );
m_Grid.ColumnAdd(2); m_Grid.RowAdd(10);
for(i = 0; i < m_Grid.RowCountGet(); i++) { for(j = 0; j < m_Grid.ColumnCountGet(); j++) { CExtGridCellString *pCell; pCell = STATIC_DOWNCAST(CExtGridCellString, m_Grid.GridCellGet(j, i, 0, 0, RUNTIME_CLASS(CExtGridCellString))); pCell->TextSet(_T("Test")); } }
m_Grid.GridCellJoinSet(CSize(2, 1), 0, 5); //Merge m_Grid.GridCellJoinSet(CSize(1, 1), 0, 5); //Split ...
When I move mouse over grid I get assert at CExtGridWnd.cpp:2426
|
|
Technical Support
|
Jun 23, 2008 - 3:40 AM
|
We have just a bit extended an article on how to merge and split cells:
How to merge a group of grid cells?
Please make sure that all merged cells are properly initialized. If it does not help, just contact us again.
|
|
Paul Cowan
|
Jun 19, 2008 - 7:19 AM
|
I’m trying to reduce the size of the v2.83 DLL, and have enabled the #define __EXT_MFC_NO_RIBBON_BAR line in Prof-UIS.h. I now get two errors during the build:
..\Src\ExtPopupCtrlMenu.cpp(741) : error C2027: use of undefined type ’CExtScrollBar’
..\Src\ExtPopupCtrlMenu.cpp(2268) : error C2061: syntax error : identifier ’CExtNCSB’
What is the fix for this?
|
|
Technical Support
|
Jun 22, 2008 - 1:34 PM
|
Thank you for reporting us this error. You can fix it by adding the following 3 lines at the beginning of ../Prof-UIS/Src/ExtPopupCtrlMenu.cpp #if (!defined __EXT_SCROLLWND_H)
#include <ExtScrollWnd.h>
#endif You can insert these 3 lines before the #include <math.h> line.
|
|
tera t
|
Jun 18, 2008 - 8:17 PM
|
Hello. I want to widen the expression width of the MDI tab.
|
|
Technical Support
|
Jun 23, 2008 - 7:20 AM
|
Here is the class that increases the height of the MDI tab strip by 20 pixels: class CMyTabMdiOneNoteWnd : public CExtTabMdiOneNoteWnd
{
public:
virtual INT OnTabWndGetParentSizingMargin(
DWORD dwOrientation
) const
{
INT nMargin = CExtTabMdiOneNoteWnd::OnTabWndGetParentSizingMargin( dwOrientation );
return ( nMargin + 20 );
}
virtual void OnTabWndMeasureItemAreaMargins(
LONG & nSpaceBefore,
LONG & nSpaceAfter,
LONG & nSpaceOver
)
{
ASSERT_VALID( this );
CExtTabMdiOneNoteWnd::OnTabWndMeasureItemAreaMargins(
nSpaceBefore,
nSpaceAfter,
nSpaceOver
);
nSpaceOver += 20;
}
};
|