Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Dialog Control anvanced Usage

campussw
Beginner
1,133 Views

I am using Intel Fortran Version 10 together with Visual Studio 2005.
However i have some problems to get all the information necessary to program the dialog controls, despite looking in all the manuals and online descriptions.
I am only familiar with the poor documented notes from the Intel library manual to use the dialog library.

I am hoping that anyone give me details hints or links to:

1. How to access a special (user generated) font for a single control by my application. i am already able to define a font for the entire dialog. even there i do not know the definitions of "ifwin" to

access a special font by my application, except the identifiers from the sample files like FF_SWISS, but what shall i do to attach e.g. the font "ARIAL".

2. Is there a way to change the color of a font in a control by my application and how? i am already able, to change the hight of a font from a sample file.

3. I would like to put an image like *.bmp to a control by my application, to change it dynamically at runtime. is this possible and how ? is it possible to assign a picture to a button control ?

4. Is there any way to create an "mousevoer" effect for a control and how is it done ?

5. How to deliver sound ( *.wav ) by my application ? i can do that by SYSTEM(....), but can anyone show me an API code sample.

6. How to set the content of an edit dialog box to "selected" by my application in order to prepare it for cut&paste operation.

Albert

0 Kudos
5 Replies
Jugoslav_Dujic
Valued Contributor II
1,133 Views
Before I proceed (well, I do have answers to most of your questions), a question of my own:

Do you use IFLOGM, and the routines therein (DlgInit, DlgModal, DlgGet, DlgSet), or do you use "native" Win32 handling of the dialogs (LoadDialog/DialogBox/DialogProc/DlgSendCtrlMessage). IFLOGM is just a wrapper around the former: it's much simpler to use, but fairly restricted in terms of what you can do, and you would have to resort to cludges to workaround.

If you use the former, I developed another library called Xeffort, which emulates IFLOGM and is compatible with it (i.e. if you have an existing IFLOGM-based code, you can recompile it just after a simple change to USE XFLOGM) but has an extended set of control properties, and is much more flexible.

If you use the Win32 APIs, I'll list the relevant API entries for each task. #5 is straightforward, regardless of the answer: PlaySound.
0 Kudos
mikegaitens
Beginner
1,133 Views

Believe me, using Jugoslavs Xeffort in its native mode is the easiest and most straightforward means to advanced dialogs. Xeffort contains routines to do your items 1, 2, 3, and 6. It also contains an event handler template generator good for item 4. And a code sample for item 5 can be found at Xeffort Extras, look for XPlaySound.

0 Kudos
campussw
Beginner
1,133 Views

Thank you for the interesting answer: Yes, i am using IFLOGM. So i assume my wishes cannot be fulfilled by simple using IFLOGM. My plans based on using minimal dependencies from libraries for future updating. Years ago, i worked with Winteracter, which i think could answer my questions too, but i am not willing to buy each year expensive updates for - what i believe - basic functionality of an computer language used for Windows environment. Can anyone explain to me, why Intel isn't enhancing the functionality for building dialogs of the libraries as part of the compiler?

Thanks Albert

0 Kudos
Steven_L_Intel1
Employee
1,133 Views
The dialog support in IFLOGM is meant to satisfy the majority of general dialog usage and not to duplicate everything that's possible in Win32. Jugoslav's xeffort library is free, but if you really wanted to avoid dependence on any outside library than simply code to the Win32 API directly. It isn't that hard.
0 Kudos
mikegaitens
Beginner
1,133 Views

The Xeffort library is not only free for both commercial and non-commercial use, its all Fortran and Jugoslav provides the source code. If you want a graduate course in very advanced Fortran, you can study the source to figure out how it works While Xeffort is comparable to Winteracter, it has none of the Winteracter drawbacks of being expensive, proprietary, and closed-source.

0 Kudos
Reply