|
Wow! I can remember when you could get BC for the same price as a large pizza. That was before they started bundling it as a suite, however.
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
|
there is one from MS "Application Verifier". From this tool we can check for heaps,memory,locks,handles many more. You just need to configure your exe to application verifier and run the exe. Application Verifier will give you the logs.It is free.
BoundChecker from Compuware is also good one.But it is not free.
|
|
|
|
|
Please how can I force the creation of a CDockablePane inside a CWnd and make it occupy the full space of that CWnd ? Am I compelled to using it inside a CFrame only and to using the DockPane methods of the frame in order to show it ? Is there a turn-around please ?
Thank you in advance.
I am happy today !
So hope evrybody be happy too !
Our Philosophy, Mohammed Baqir Al Sadr
|
|
|
|
|
I have a similar problem.
Is there any updates?
|
|
|
|
|
I resorted to BCGSoft to get an answer, they are the creators of MFC 9.0 (Feature Pack) including the CDockablePanes,etc
This is the link of my discussion, hope it helps you. Frankly I didn't implement that solution instead I solved my pbm another way, according to the context I was with.
http://www.bcgsoft.com/cgi-bin/forum/topic.asp?TOPIC_ID=4957[^]
Easy Profiler : a compile-time profiler for C++
www.potatosoftware.com
|
|
|
|
|
Thank you for the quick answer
As I understood from BCG topic I have to implement it by myself by resizing the client pane.
It's not so difficult when I use a one single pane, but it becomes much more difficult when I have to implement resizing of number of client panes, especially when dividers are moved...
Semyon
|
|
|
|
|
That case try to see how you can change your parent CWnd by a CFrameWndEx which contains the logic of managing dock sites and positioning panes.
If you fail, as I did, then try also to study the effort and possible outcome of investing into porting the thing yourself into CWnd.
In afxmdiframewndex.h there a section of code called "dockmanager layer". May be it suffices to import this code, decouple it from its host class and try put it into your custom "CDockAwareWnd" class so the thing works ! (Note that the feature pack comes with its source code).
Good luck.
Easy Profiler : a compile-time profiler for C++
www.potatosoftware.com
|
|
|
|
|
Ahmed, I forgot to saty that my CWnd is already CFrameWndEx.
I have started a new SDI application and I want to manage a set of dockable panes in the way that they will always occupy the whole space of main frame. But as I understood from the "rich" VS2008 MSDN documentation there is no such a possibility. I can align my panes to left/right/top/bottom but not to whole space so I have to manage their sizing by myself...
Maybe I missed something (I'm new in mfc 9)?
|
|
|
|
|
You are on another pbm then.
Well, yes exactly, there's indeed not such "central" dock site or space within the FrameWndEx.
the FrameWndEx first lays out the docking panes, according to their positions in the borders and the central space that is left is reserved for the CView that would have been attached to the Frame and to another abstract CDocument class via the documenttemplate mechanism.
If you do'nt have time to adapt the source code then I think you just have to identify one of your existing docking panes and put its content into the CView, so it will be always shown in the central area and the remaining panes will be placed to its left/right/top, etc.
I hope your situation is not the same as mine in 2007 when I had to develop a video surveillance application. Docking panes (or control bars) seemed to be perfect to use as windows to show remote camera video and let the user manage the custom positioning of multiple video window byhimself.
There was the need to get rid of the central area. this was not possible since all my panes are in term of type of content the same. I ended up doing things manually inside the CView.
So I hope your pbm be solved by finding the particlar docking pane that hosts the type of content that can be shown persistently in the central area (CView). Otherwise also try to invent one !
Easy Profiler : a compile-time profiler for C++
www.potatosoftware.com
|
|
|
|
|
I am afraid my situation is similar to yours in 2007
Maybe it's even worst because I have to switch between a view modes (different sets of panes).
For example:
View mode1 ---> Pane1-Pane4-Pane6
View mode2 ---> Pane2-Pane3-Pane5
BTW:
Putting one of the panes into the view may be a good solution and I should consider it, but in this case I can already see a main problem: when you try to drag this pane out you came to the same situation of empty rectangle...
|
|
|
|
|
Well first of all let me also suggest to you to consider the use of splitter frame. It is also easy to use : all you have is to indicate the splitting(rows/columns) and then attach windows to each resulting zone.
You can make a toolbar on top of the frame with each button corresponding to a certain "split configuration" or "mode" according to your terminolgy.
Thus when the user choses a mode, you rest the splitting algorithm and dynamically reattach windows to the zones (This is allowed by the SplitterWnd).
Finally, commenting on your last note, well, you should note that a view can't be dragged out of the central space. You told me your application is SDI. If it was MDI and the docking panes are created within the main frame then if you do'nt have a child frame (CMDIChildFrameEx) then the central void will appear.
Easy Profiler : a compile-time profiler for C++
www.potatosoftware.com
|
|
|
|
|
Error while ending the thread, please advice
unsigned __stdcall TF(void* arg)
{
HANDLE timer=(HANDLE) arg;
while (1)
{
if(iStopPrgBar11==1)
{
_endthread(); // Error flashed @ this point
return 0;
}
WaitForSingleObject(timer,INFINITE);
prgBar->StepIt();
}
_endthread();
return 0;
---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!
Program: ...Client\aimNavigator\guiLayer\navigator\DebugMDd\navigator.exe
File: afxcmn.inl
Line: 449
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
---------------------------
Abort Retry Ignore
---------------------------
|
|
|
|
|
Accessing some Invalid index would be a quick guess. Did you try using the great DEBUGGER to know where and why the assertion is popping up...
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
The line in the. pls advice,
What would be the cause
File: afxcmn.inl
Line: 449
AFXCMN_INLINE int CSliderCtrl::SetTipSide(int nLocation)
|
|
|
|
|
Why do you need the _endthread() call?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Have you looked at line 449 of afxcmn.inl ? That would be a big clue as to what condition is asserting.
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
Hi all,
I want to know how to set the window size in an sdi application to 770*550.After setting it to the desired size it does not have any scroll bars.Also where can I put the corresponding code.
please help,,
its urgent...
|
|
|
|
|
johnthecoder wrote: I want to know how to set the window size in an sdi application to 770*550.After setting it to the desired size it does not have any scroll bars.Also where can I put the corresponding code.
The SetWindowPos function changes the size, position, and Z order of a child, pop-up, or top-level window.
The scroll bars won't be visible if the application fits to the window. you can check this behavior with IE
johnthecoder wrote: its urgent...
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
It sounds like you may have a FormView application and your form is larger than the default window size. If that's the case, look in your view class at the OnInitialUpdate method. You can change
ResizeParentToFit(); to be
ResizeParentToFit(FALSE);
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
|
You can set the size in PreCreateWindow(..) of MainFrm.cpp of your SDI.
Loot at below.
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
cs.cx=450;
cs.cy=600;
return TRUE;
}
|
|
|
|
|
Hi all,
can someone tell me how to create fonts or create a .ttf file for a new language on windows.
I need to know the mannual method of doing this and not to use some utility.
You can assume that I need to write an utility to create font.
modified on Thursday, August 21, 2008 6:17 AM
|
|
|
|
|
This isnt in first place a programmic topic. It is a question of the .tff file format. I think it ia a black& white raster bitmap where every charcater has its place.
Greetings from Germany
|
|
|
|
|
just FYI, TTFs are vector-based, not bitmap-based. that's how they can scale smoothly.
|
|
|
|