|
Can you see anything wrong with this code? How to write to a RichEditView? Thanks.
POSITION pos = GetFirstViewPosition();
while (pos != NULL)
{
CRichEditView* pView = (CRichEditView*) GetNextView(pos);
CRichEditCtrl* ctl=new CRichEditCtrl();
ctl=&(pView->GetRichEditCtrl());
int i, nLineLength, nLineCount = pView->GetRichEditCtrl().GetLineCount();
CString strText;
for (i=0;i < nLineCount;i++)
{
try
{
nLineLength = pView->GetRichEditCtrl().LineLength(i);
ctl->GetLine(i, strText.GetBuffer(nLineLength+1));
strText.ReleaseBuffer(nLineLength+1);
}
catch(...)
{
}
}
}
<italic>Work hard and a bit of luck is the key to success. You don`t need to be genius, to be rich.
|
|
|
|
|
Try:
CString strText;
CRichEditCtrl &ctlEdit = GetRichEditCtrl();
ctlEdit.GetWindowText(strText);
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
HI,
How can i add Horizental Scroll Bar in CCheckListBox Control.
waitng for reply.
Thanx
Regards.
|
|
|
|
|
See the documentation on SetHorizontalExtent() . For automatic support for a horizontal scroll bar, see this[^] article.
/ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
My small program is written on SDI. I have a CArray type data in my CProgramView.c and I would like to use it in one of my dialog box. Normally I do it within the dialog boxes but I dont understand the concept of SDI and dialog box.
Can anyone give me some example coding? Thanks
- VC++ newbie
|
|
|
|
|
Try the following:
CFrameWnd* pFrame = (CFrameWnd*)AfxGetMainWnd();<br />
CYourView* pView = (CYourView*)pFrame->GetActiveView();<br />
pView->GetArray()<br />
...
In case of SDI the first call returns the application frame window which contains the active document, view etc. The active view is your current view where your array is implemented. What you need to do is implement a member function GetArray which gives access to your data.;)
However generaly it is not a good idea to have data in CView, use rather CDocument for your data and then access it using pFrame->GetActiveDocument()
Cheers
|
|
|
|
|
Thanks Abyss,
But I still dont get the idea. Let me explain the task I need the program to do.
I have a coordinate display in CView (I use OnDraw to draw out the x-axis and y-axis) that allows user to use mouse pointer to pick out coordinate points on CView. Each points will be collected into an array (CArray). I made a struct that contents two elements x & y to store x and y coordinates.
Next, I have a dialog to list out the points. The dialog can be accessed from the menu.
I am new to VC++ but I have b/ground in C. How can use MFC to ease my coding?
1) Must I use struct so store x & y in CArray? Is there another way?
2) How can I use the CArray in my listing dialog? I tried to declare public variables in CView (CArray<mystruct,mystruct> myarray) but it doesnt allow me to declare.
Thanks a million.
|
|
|
|
|
In my opinion David (see bellow) proposed a simpler approach so in the CView member function where you construct the dialog pass the array to you dialog constructor. I recommend to use CPoint instead of your structure which stores x,y. The member function of the CView can be called via MFC message command.
1) Use CPoint in CArray to store points.
2) It is not a good idea to create public members in any class.
|
|
|
|
|
When constructing the dialog from within one of the view's methods, pass the address of the CArray object. Something like:
CMyDialog dlg(&array); or
CMyDialog dlg;
dlg.m_pArray = &array;
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
&array is the array from my view? It is from different class. Myarray is from CView however CDialog is a different class. I need to know how to use myarray in CDialog. THanks.
|
|
|
|
|
Depending on how you want to pass the array from the view to the dialog, you'll either need to create a new constructor for the dialog, or make one of its member variables public so that the view can assign a value to it directly.
In either case, the dialog will have a CArray* as a member variable. Once it has been assigned a value, it can be used as you like.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
I have a struct under CDoc
struct MyStruct {
float x;
float y;
};
I use it for CArray<mystruct,mystruct>. I dont know how to define a public variable with struct.
Thanks
|
|
|
|
|
You need to put the struct in a .h file by itself. Then each of the .cpp or .h files that need it can simply #include it.
mystruct.h:
struct MyStruct
{
float x;
float y;
};
typedef CArray<MyStruct*, MyStruct*> MyStructArray; Now the view and the dialog can each have a MyStructArray member variable.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
There are quite a number of errors:
typedef CArray<codata*, codata*=""> MyStructArray;
error C2143: syntax error : missing ';' before '<'
So, after I construct mystruct.h, I can add Add Member Variable (public) for Variable Type (MyStructArray)?
Besides, I always get error on CDoc* GetDocument(); in my CView.h.
|
|
|
|
|
jw81 wrote:
typedef CArray MyStructArray;
error C2143: syntax error : missing ';' before '<'
CArray requires afxtempl.h to be included. I would suggest doing so in the project's stdafx.h file.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Hi
The CDoc* GetDocument(); error is not solved yet. It only happens when I included my CView.h into the cpp.
Thanks
|
|
|
|
|
What file are you including CView.h in? I would hazard a guess that you also need to include the CDoc.h file right above that statement.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
|
Cant solve the CDoc error.
|
|
|
|
|
Hi,
How to convert string to Hexadecimal value and vice versa?
thanx
thanx
|
|
|
|
|
as i don't really understand your question, my answer is probably off-topic... if so, please reformulate better.
did you try sscanf() with %X in the format ?
CString str = <font color=#808080>"5F6A"</font>;
<font color=#0000FF>int</font> i = 0;
sscanf((LPCTSTR)str, <font color=#808080>"%X"</font>, &i);
ASSERT(i == 0x5F6A);
TOXCCT >>> GEII power [toxcct][VisualCalc]
|
|
|
|
|
Hi All,
How to generate xml file from vc++ .
|
|
|
|
|
Hi All,
How to generate xml file from vc++ .
|
|
|
|
|
|
does Windows support raw sockets like LINUX? if yes,.. suggest some reading links..
if no, how is Winpcap implented then
|
|
|
|