
~ yz / lib / winctl.f
REQUIRE WINDOWS ... ~ yz / lib / winlib.f
0 VALUE win
0 VALUE times
0 VALUE hdc
0 VALUE myrect
0 VALUE mypen2
22 VALUE dots
0 VALUE fid
CREATE 0d0a 0xD C, 0xA C,
CREATE * dots dots CELLS 3 * ALLOT
: rnd TIMER @ * 200 UMOD;
: rndxy dots 2 * 0 DO rnd 2 * 25 + I CELL * * dots +! rnd 3 * 25 + I CELL * * dots + CELL +! LOOP;
: tre rndxy
S "X:" fid WRITE-FILE THROW
dots 2 * 0 DO I CELL * * dots + @ S> D (D.) fid WRITE-FILE THROW S "" fid WRITE-FILE THROW LOOP
0d0a 2 fid WRITE-FILE THROW
S "Y:" fid WRITE-FILE THROW
dots 2 * 0 DO I CELL * * dots + CELL + @S> D (D.) fid WRITE-FILE THROW S "" fid WRITE-FILE THROW LOOP
0d0a 2 fid WRITE-FILE THROW
0d0a 2 fid WRITE-FILE THROW
;
rndxy
WINAPI: CreatePen GDI32.dll
WINAPI: PolyBezier GDI32.dll
PROC: paint
mypen2 windc SelectObject DROP
dots * dots windc PolyBezier DROP
rndxy
PROC;
MESSAGES: my
M: wm_lbuttondblclk
rndxy
win winhide
win winshow
TRUE
M;
MESSAGES;
: run
WINDOWS ...
S "warps.txt" R / W CREATE-FILE THROW TO fid
0x00F00599 2 0 CreatePen TO mypen2
0 create-window to win
win TO winmain
"Bezheshki" win -text!
420 430 0 button place
this TO myrect
10 10 myrect ctlresize
['] tre myrect -command!
120 130 win winmove
500 500 win winresize
paint win -painter!
my win -wndproc!
win winshow
... WINDOWS
fid CLOSE-FILE THROW
BYE
;
TRUE TO? GUI
'run MAINX!
S "warpy.exe" SAVE
run










Source: https://habr.com/ru/post/211709/
All Articles