|
I have a table represented by a control CListCtrl. I want to merge all cells from a specific row and to insert in the new created cell a text. If anybody knows a solution please tell me. Thanks.
BujCat
|
|
|
|
|
Here's my thought "from the hip"...
Loop through all the "SubItems" of a particular "Item" .appending() each sub-item's text to a CString. Now you have your merged text.
If you want to create a new column (not sure what you mean by "cell"), then you'll have to CListCtrl.InsertColumn(), and then redraw the control.
Hope this helps you find the MSDN references you'll need.
thanks,
JennyP
|
|
|
|
|
I have defined "cell" the intersection between a row and a column. My list control have a black grid between cells.
I don't know if you understand me. I want to merge all cells from a row(to merge all columns) and to insert a CString in this row.
I try a lot but I don't have resolved the problem yet
Thanks
BujCat
|
|
|
|
|
Hi everybody,
I have a problem, which I could not solve myself and I hope somebody has made some experiences with CMetaFileDC. First of all: My Code works on onscreen-DCs and what comes out of my printer looks exactly as I want. My only problem is rendering a metafile to a print-preview-DC. The result is always way to large and does not fit the page. It seems that the preview-dc behaves like a printing-dc and PlayMetaFile ignores that.
Some example code (like mine but without unnecessary details):
<br />
CSize ext(cx, cy);<br />
pDC->DPtoHIMETRIC(&ext);<br />
CMetaFileDC mdc;<br />
mdc.CreateEnhanced(pDC, 0, CRect(CPoint(0, 0), ext), 0);<br />
<br />
drawObjects(mdc);<br />
<br />
ext.SetSize(pDC->GetDeviceCaps(PHYSICALWIDTH) - 2 * pDC->GetDeviceCaps(PHYSICALOFFSETX),<br />
pDC->GetDeviceCaps(PHYSICALHEIGHT) - 2 * pDC->GetDeviceCaps(PHYSICALOFFSETY));<br />
<br />
HENHMETAFILE hMf = mdc.CloseEnhanced();<br />
CRect bounds(CPoint(0, 0), ext);<br />
pDC->SaveDC();<br />
pDC->SetMapMode(MM_ANISOTROPIC);<br />
pDC->PlayMetaFile(hMf, &bounds);<br />
pDC->RestoreDC(-1);<br />
<br />
DeleteEnhMetaFile(hMf);<br />
If necessary I can make some screenshots of that effect.
Thanks for reading ,
Christian
|
|
|
|
|
Hmmm, i tried to render the metafile to an offscreen-dc and then BitBlt it to the preview-dc. Same effect. I have no idea what to do...
|
|
|
|
|
How do I export a class written in C++ to a VB project?? How do my VB declare and use this class??
|
|
|
|
|
CLASS .
Exporting Function from C++ DLL is easy but for exporting CLASS you have to create COM DLL ,as i think soo.
"I Think this Will Help"
[Vote One Here,.....]
<h5
alok gupta="" <br=""> visit me at http://www.thisisalok.tk
|
|
|
|
|
is there any way to append a CString [] to another CString [], can anybody help me?
thanks to all.
|
|
|
|
|
|
CString behaves much like a normal C++ string, hence
you can use:
CString strHello = "Hello";
CString strThere = " There";
CString strAppend = strHello + strThere;
Is that what you had in mind?
Cheers,
David
|
|
|
|
|
how can i validate date input from user, i accepts that date in to a CEdit derived control, i want to check whether the user enter the in right format or not ( my required format is DD/MM/YY). any idea ?
Thanks in advance
Ninety-eight percent of the thrill comes from knowing that the thing you designed works, and works almost the way you expected it would. If that happens, part of you is in that machine.
|
|
|
|
|
Use CDateTimeCtrl . It can be validated.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Doing it "old school", you can use a call to sscanf(...) , which was designed for scanning a formatted string. For example, if you would build a string using printf(...) with a format string of "%02d/%02d/%02d" , you would scan that string back with that same format string, and check the return value of sscanf(...) to make sure you scanned out three tokens/values.
That would help you verify the format, but not the data... For example, scanning "99/88/77" would be successful, even though it is an invalid date.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Tip for new SUV drivers: Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites
|
|
|
|
|
A nice article on codeproject site, "editable date time control", using date time edit control and programmer is validating the date based on format, if you check his code, you may get idea about date validation from edit control.
Anand
|
|
|
|
|
I am having an issue with malloc on Win2000 and WinXPPro. I am trying to repeat a real world scenario here. I have a loop that keeps calling malloc until it fails (use all virtual address space).
1) malloc 1100 rand() size blocks between 0 and 32 bytes.
2) malloc nSize block
3) malloc another nSize block
4) free 2)
5) repeat from 1 until any malloc fails
6) free all allocated memory
After process creation if use nSize>520184, this will continually use all virtual space until use nSize<=520184. Now use nSize>520184 will allocate 1-25 blocks then malloc fails. I can continually use nSize<=520184 and use all address space.
Basically once I have filled the address space with blocks <=520184 I can no longer use blocks >520184.
Anyone got any thoughts
|
|
|
|
|
Maybe you can refer to the intersting article about the allocations in MSDN:
Search "globalalloc" then rubrik "Allocations memory; the old-fashionned way"
Hope this will help you.
|
|
|
|
|
It sounds like your allocation pattern is causing heap fragmentation. I'm not sure whether Windows 2000 or XP automatically coalesce adjacent free blocks, or whether they leave those blocks as separate blocks. I suspect that if the code from the VC6 runtime library was used or adapted, they only join the block being freed with the next block if that is also free.
You can force a full coalesce of the heap by calling _heapmin . The documentation currently states that it's only supported by Windows NT but my reading of the source indicates it should also work on 2000, XP and 2003. Under the covers this function calls HeapCompact .
One strategy to prevent the fragmentation in the first place is to allocate different size blocks, or blocks with different lifetimes, from different heaps. You can create your own heap using HeapCreate .
The heap code is really meant for small variable-size blocks. If you're creating 512KB buffers, you might be better off calling VirtualAlloc directly.
Stability. What an interesting concept. -- Chris Maunder
|
|
|
|
|
Thanks for your thoughts. Different size blocks or different heaps is not applicable here. I have modified the loop to use malloc for small blocks and VirtualAlloc for the big blocks. This gives me more stability and memory usage. But, there is always one, this code is ANSI C only, so no access to VirtualAlloc.
If it is fragmenting memory then should this not be a gradual degredation? NOT as stated, use <=520184 and immedialty you cannot alloc more? There is something odd happending in the MS implemenation of a VMM!
|
|
|
|
|
I'm curious, why do you need to allocate so much memory from the heap, to the point where you exhaust it?
Neville Franks, Author of ED for Windows www.getsoft.com and Surfulater www.surfulater.com "Save what you Surf"
|
|
|
|
|
How to set the modified time of a file as the current time?I used setFileTime()but have confusions.Can anyone give idea with exmple.Thanks in advance.
|
|
|
|
|
|
CEdit in multi-line style has two length limit, one is max text limit, which can use SetTextLimit() to solve, another is line length limit(about 1024), Does any one know how to solve it?
I search for a long time, but cannot find the solution.
Is there possible to simply solve it?
|
|
|
|
|
fangzj wrote:
Does any one know how to solve it?
Solve what? Are you wanting the text limit increased, or the line length increased? Have you considered CRichEditCtrl ?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Thanks for your advise. But I just want to know it is possible to change the line length limit of a CEdit control in multi-line style. I donot want to use CRichEditCtrl or write my own control in my sample project.
|
|
|
|
|
fangzj wrote:
But I just want to know it is possible to change the line length limit of a CEdit control in multi-line style.
How are you verifying that each line of a multiline edit control is limited to 1024 characters?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|