AnnSaveMemory example for C++ Builder
Note: |
This topic is for Document/Medical only. |
This example lets you save the current annotations to a file in memory, and lets you load the annotations that were saved.
1. |
Start with the project that you created in Creating and Using Annotations. |
2. |
Declare the following in the private section of your main form: |
HGLOBAL hMemGlobal;
long iSizeGlobal;
3. |
At the top of your main form, add two command buttons and name them as follows: |
|
|
Name |
Caption |
|
AnnSaveMem |
Save In Memory |
|
AnnLoadMem |
Load From Memory |
4. |
Code the AnnSaveMem button's Click procedure as follows: |
void __fastcall TForm1::AnnSaveMemClick(TObject *Sender)
{
if (pRasterAnn->AnnSaveMemory
((long*)&hMemGlobal, (Ltannlib_tlb::AnnFMTConstants)ANNFMT_NATIVE,
False, &iSizeGlobal) != 0)
ShowMessage ("Error calling AnnSaveMemory");
}
5. |
Code the AnnLoadMem button's Click procedure as follows: |
//Load the annotations from the memory-resident file.
void __fastcall TForm1::AnnLoadMemClick(TObject *Sender)
{
if (pRasterAnn->AnnLoadMemory
((long)hMemGlobal, iSizeGlobal) != 0 )
ShowMessage ("Error calling AnnLoadMemory");
else
ShowMessage ("AnnLoadMemory succeeded");
GlobalFree (hMemGlobal);
}
6. |
Run your program to test it. |