There are probably several good reasons why one would like to use ClearWin+. From my experience one have several and proven existing code written in Fortran. Adding a user interface implies that a language like VB, Java, C++, etc. is used for the GUI development. The disadvantage: When my colleagues sees a DOS box the firts reaction is that we are using a stone age language. ClearWin+ offers new possibilities.
The user interface here shows a simple basis for the GUI development - as a beginner. This is very cool. However, a few questions exists: 1.) Is there a simple way to align the boxes for data input; 2.) On start a vscroll appears - is there a way to suppress at the begin.
[URL=http://img17.imageshack.us/i/helloclearwin.gif/]
[/URL]
Uploaded with [URL=http://imageshack.us]ImageShack.us[/URL]
module aps_top
implicit none
type par_type
integer :: p1 = 1
integer :: p2 = 1
integer :: p3 = 1
integer :: p4 = 1
character(len=1) :: char1
character(len=6) :: char6
end type par_type
integer ::ptr
integer :: k,j
integer :: cw_hndl
type(par_type) :: par
integer :: lb1_selects
integer :: lb2_selects
integer :: lb3_selects
character (len=*),dimension(2), parameter ::lb1=&
&(/'lb1-1 ',&
& 'lb1-2 '/)
character (len=*),dimension(3), parameter ::lb2=&
&(/'lb2-1 ',&
& 'lb2-1 ',&
& 'lb2-1 '/)
character (len=*),dimension(3), parameter ::lb3=&
&(/'lb3-1 ',&
& 'lb3-1 ',&
& 'lb3-1 '/)
contains
integer function cbupdate()
use mswin
call see_propertysheet_page@(ptr)
cbupdate=2
end function cbupdate
integer function cbdummy()
use mswin
implicit none
write(*,'(4I3,2X,A1,3X,A6)') &
& par%p1,par%p2,par%p3,par%p4,par%char1,par%char6
cbdummy=1
end function cbdummy
integer function cb_clear()
use mswin
implicit none
call clear_window@(0)
cb_clear=1
end function cb_clear
integer function cb_lb1()
use mswin
implicit none
select case(lb1_selects)
case(1)
par%char1 = 'A'
case(2)
par%char1 = 'B'
end select
write(*,'(A)') 'char1 = '//par%char1
cb_lb1=1
end function cb_lb1
integer function cb_lb2()
use mswin
implicit none
select case(lb2_selects)
case(1)
par%char6 = 'abcdef'
case(2)
par%char6 = 'ghijkl'
case(3)
par%char6 = 'mnopqr'
end select
write(*,'(A)') 'char6 = '//par%char6
cb_lb2=1
end function cb_lb2
end aps_top
[/URL]
[/URL]