Consultor Eletrônico



Kbase P49050: Error 3307 creating 500 static buttons in a single frame
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   20/10/2003
Status: Unverified

FACT(s) (Environment):

Progress 9.1C

SYMPTOM(s):

Error 3307 creating 500 static buttons in a single frame

<segment-name> has exceeded its limit of <segment-size> bytes, in <file-name> at line # <line-number>. (3307)

CAUSE:

Segment code limit exceeded

FIX:

Use dynamic widgets instead of static widgets.

num# = truncate( {&WINDOW-NAME}:HEIGHT, 0 ) .
numBut# = MIN( 600, num# * ( {&WINDOW-NAME}:WIDTH - 1 ) / 5 ).

REPEAT vi = 1 TO numBut# :
CREATE BUTTON vh
ASSIGN FRAME = FRAME {&FRAME-NAME}:HANDLE
LABEL = STRING( vi )
WIDTH = 5
HEIGHT = 1
COL = 1 + TRUNCATE( ( vi - 1 ) / num#, 0 ) * 5
ROW = 1 + ( ( vi - 1 ) MODULO num# )
SENSITIVE = TRUE
VISIBLE = TRUE
TRIGGERS :
ON choose PERSISTENT RUN butChoose IN THIS-PROCEDURE ( vi ).
END TRIGGERS.

END.