|
In VC++, you have a Resource file which has all the information regarding what ur dialog will contain , sumthng like this
LTEXT "Click View ",IDC_STATIC,54,73,145,11
PUSHBUTTON "View Information",IDC_VIEW,254,165,56,16
Wat i want is instead of putting "Click View" in this file , can i declare a variable CString str_Data which gets its value from a function
smthng like str_Data = FetchData(LPCTSTR);
so wat i mean is :
LTEXT str_Data, IDC_STATIC,54,73,145,11
|
|
|
|
|
sorry for my poor English .
It can't use variable directly in Resource file . If you want to do that , you can use a static content which ID isn't IDC_STATIC , and use SetWindowText to contrl the static content that you want to display in the dialog CPP.
LTEXT "Select",IDC_STATIC_NAME,....
...
//dialog cpp
...
GetDlgItem(IDC_STATIC_NAME)->SetWindowText("...");
|
|
|
|
|
That's quite easy...
(Step 1) Change the ID of your static control to something other than IDC_STATIC . For example IDC_MY_TEXT .
(Step 2) You can set the text of your static control programatically at any place in your code (e.g. in OnInitDialog() ) with the following method:
SetDlgItemText(IDC_MY_TEXT, "Here goes your text!"); The text can surely be a CString instance or the return value of your getData() method.
cheers,
mykel
OMM: "Let us be thankful we have an occupation to fill. Work hard, increase production, prevent accidents and be happy."
|
|
|
|
|
Thanx ....
n wat abt Resource File ... do i have 2 make sum changes in that ....
in LTEXT "",IDC_MY_TEXT,....
|
|
|
|
|
Sorry... what's your question? Please try to write valid English!
Perhaps you meant something completely different but... you don't have to change your resource file (.rc and/or resource.h) by hand. I guess you're using Visual Studio. Open the dialog that contains the static control, select the static with the mouse and enter the new ID for the static in the properties window. Press return, that's it. Visual Studion changes your resource files (.rc and resource.h).
Now you can use SetDlgItemText() to programmatically change the text of the static (see my previous post).
cheers,
mykel
OMM: "Let us be thankful we have an occupation to fill. Work hard, increase production, prevent accidents and be happy."
|
|
|
|
|
I dont think you can open MSMQ with send & recv permissions simultaneously. but there are somethers= sharemode permissions you can check in MSDN.
|
|
|
|
|
Hi all,
i am making a sdi application in which i have made a static splitter control.
i have made 2 views to allocate to parts made by splitter control.i have derived those two classes from CListView and when i m using them in my code like this
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
if (!m_wndSplit.CreateStatic(this,1,2))
{
TRACE(_T("failed to create the splitter"));
return FALSE;
}
if (!m_wndSplit.CreateView(0,0,RUNTIME_CLASS(CLeftList),CSize(225, 500),pContext))
{
TRACE(_T("Failed to create view in first pane"));
return FALSE;
}
if (!m_wndSplit.CreateView(0,1,RUNTIME_CLASS(CRightList),CSize(225, 500),pContext))
{
TRACE(_T("failed to create view in second pane"));
return FALSE;
}
return TRUE;
}
in my mainframe class it gives an error...
error C2504: 'CListView' : base class undefined
E:\Documents and Settings\Neha\Desktop\testapp\LeftList.cpp(17) : error C2440: 'return' : cannot convert from 'class CLeftList *' to 'class CObject *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
E:\Documents and Settings\Neha\Desktop\testapp\LeftList.cpp(17) : error C2653: 'CListView' : is not a class or namespace name
and many more
what is the problem??
can anybody help me in this....
Thanks in advance
|
|
|
|
|
CListView is declared in "afxcview.h", check the whether your stdafx.h included afxcview.h.
|
|
|
|
|
It was not there not included and my problem is solved
thank you very much....
|
|
|
|
|
tell me one thing if i derive this class from CFormView and place a Listcontrol from control pane, Size of list control is not same as window and when i slide splitter control ii does not increase or decrease its size. can you tell me how to relate this list control to splitter bar...
|
|
|
|
|
I guess your the list control becomes the child of CFormView. Then if you want to adjust the size of list control, you have to handle the WM_SIZE, ... messages from CFormView and Adjust the list control size using SetWindowPos(). When you move the split bar the CFormView derived class will receive the Size messages.
Best Regards
Raj
|
|
|
|
|
Is there a way through which i can OR entire contents of array.
or may be some memory function which will or two pointers with the specified size.
|
|
|
|
|
And what exactly is wrong with using a loop for this purpose? I'm not exactly sure what you want to OR, but if you want to perform bitwise operations on the two numeric arrays, looping and storing the data in another array is a perfectly fine way of doing so.
|
|
|
|
|
Being arrays hugh loop takes 4-5 seconds.
so i want to reduce this time to 2-3 seconds.
|
|
|
|
|
Well, what I don't understand is... looping is a concept, so it's not inherently slow unless your algorithm is crappy. If you have 100 pieces of data, and you want to process them all, you have to create a loop that goes through everyone of them. An array (to my inexperienced self), is quite a simple data structure, basically, an initial value and offsets of size sizeof(type), all contiguous in memory, which should be very fast to access. You only have to loop through all of this data once. You do not have to revisit them. Just something like:
int array_A[100];
int array_B[100];
int array_C[100];
for (int i = 0; i < 100; i++)
{
array_C[i] = array_A[i] | array_B[i];
}
I don't know if it gets any simpler than that...correct me if I'm wrong.
|
|
|
|
|
I dont know whether i am looking for is possible or not?
what i want e.g if i have to assign 10000 elelemts in loop will take siginifancatly more time than a memcpy or memmove call. similarly something like memcpy or memmove is there anything that can speed up this or operation.
|
|
|
|
|
How huge of a loop takes 4-5 seconds???
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Borrowing from Cyrilix's code, here's code ORing two 50MB arrays of integers (200MB total bytes
each).
It takes much less than a second on my machine
int *array_A = new int[52428800];
int *array_B = new int[52428800];
int *array_C = new int[52428800];
for (int i = 0; i < 52428800; i++)
{
array_C[i] = array_A[i] | array_B[i];
}
delete[] array_A;
delete[] array_B;
delete[] array_C;
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Can anyone help me to get answers to my these two questions :
1. How can I copy a file bit -by- bit? And also store that bit temporarily in any variable.
2. How to write a single bit in file? Is this method write.
fstream dfile;
char bit = '1';
dfile<<bit-48;
what does="" the="" above="" code="" writes="" to="" dfile="" a="" byte="" or="" bit.???
codes="" compiled="" in="" borland="" c++="" 3.0="" will="" be="" nice="" for="" me="" cos="" i'm="" using="" that="" as="" my="" compiler
--="" modified="" at="" 12:24="" thursday="" 21st="" june,="" 2007
manmohan="" bishnoi=""
<div="" class="ForumSig">Manmohan Bishnoi
|
|
|
|
|
The smallest I/O resolution you have is one byte so you'll have to work with 8 bits at a time.
You can use bitwise and shift operators to manipulate bits in a byte.
Mark
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Recently I begin to program with GDI+,and I want to contruct a Bitmap object with the function Bitmap( Class type, String resource ),because my bitmap is in resource(is it right to use the function?).But I don't know how to set the parameters "type" and "resource"~ Help~
|
|
|
|
|
Construct CBitmap object to first load the bitmap from resource.
Then use that object to get the handle of bitmap.
Finally ,from that handle you can construct a GDI+ Bitmap object by using
Bitmap::FromHandle() function.
|
|
|
|
|
Or you can use this constructor:
Bitmap(HINSTANCE, const WCHAR *)
e.g.
Gdiplus::Bitmap bitmap(hInst, MAKEINTRESOURCEW(IDB_BITMAP));
Mark
-- modified at 0:02 Friday 22nd June, 2007
Fixed Typo
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
Hello,
I want to display tooltips in Wnd when the mouse is in some rect. So i use ON_NOTIFY(TTN_NEEDTEXTW, 0, OnToolTipNotify) and ON_NOTIFY(TTN_NEEDTEXTA, 0, OnToolTipNotify) Like,
void CLadderWnd::OnToolTipNotify(NMHDR *pNMHDR, LRESULT *pResult)<br />
{<br />
TOOLTIPTEXTA* pTTTA = (TOOLTIPTEXTA*)pNMHDR;<br />
TOOLTIPTEXTW* pTTTW = (TOOLTIPTEXTW*)pNMHDR;<br />
...<br />
CString str = "abcd\n1234";<br />
pTTTA->lpszText = (LPSTR)(LPCTSTR)str;<br />
}
I hope display text with multiline, but it will output just one line and display "abcd1234". I have tried "\r\n" or "\r" and they are the same.
How can I do it!
Thanks!
|
|
|
|
|