以下是我试图打印具有十种不同颜色的文本的程序,但是由于Intel fortran中没有dectohex(4)函数,如何在quickwin应用程序中实现所需输出?
谢谢
! build as a QuickWin App.
USE IFQWIN
INTEGER(2) result
INTEGER(4) i
TYPE (xycoord) xys
result = INITIALIZEFONTS()
result = SETFONT('t''Arial''h18w10pvib')
CALL MOVETO(INT2(100),INT2(100),xys)
grstat=SETCOLORRGB(#0000FF) !red color
CALL OUTGTEXT('The brown fix jumps over lazy dog. ')
!Now print ten times with different colors
do i=1,10
grstat=SETCOLORRGB(dectohex(i))
CALL OUTGTEXT('The brown fix jumps over lazy dog. ')
end do
END
答案 0 :(得分:1)
向您致敬!我根据Scott Johnson的第一条评论找到了解决方案。
我所做的是制作一个4字节的整数数组来复制“枚举”数据类型,该数据类型默认情况下在fortran中不可用。
INTEGER(4) , DIMENSION (3)::COLORS
COLORS=(/#0000FF, #00FF00, #FF0000/) !just 3 colors to illustrate the solution
do i=1,3
grstat=SETCOLORRGB(COLORS(i))
CALL OUTGTEXT('The brown fix jumps over lazy dog. ')
end do
您可以将此概念扩展到其他程序。 谢谢。
Jai Imran Khan。