Home THE HYPERCARD CENTER

HyperTalk Reference
Home » HyperTalk Reference »

Note: This is a work in progress and many formatting issues have been fixed. Read more about the project on the home page.

rectangle

set [the] rect of button to rectangle
set [the] rect of field to rectangle
set [the] rect of card to rectangle
set [the] rect of window to rectangle
get [the] rect of menuBar

The rectangle property returns or sets the rectangular coordinates of buttons, fields, cards, and windows, and it returns the coordinates of the menu bar. Setting the rectangle of a card changes the size of all the cards in a stack; setting the rectangle of the card window resizes the window, not the card.

HyperCard determines the rectangle of buttons, fields, cards, and its built-in windows relative to the top-left corner of the current card. HyperCard determines the rectangle of the card window relative to the top-left corner of the screen with the menu bar.

Note: You can’t set the rect of an inactive card window or of the menu bar.

Examples

the rectangle of card button 1
the rectangle of bkgnd field id 34
the rectangle of this card
the rect of message box
the rect of tool window
the rect of card window
set the rect of bkgnd button "Next" to the rect of bg btn "Prev"
set the rect of card window to the rect of this card

Demo Script

on talkAboutRects
answer "The rect of bkgnd btn “Run the Script” is:" && ¬
the rect of bkgnd btn "Run the Script" & return & return & ¬
"The rect of this card is:" && the rect of this card & return & ¬
return &"The rect of the card window is:" && the rect of the card window
end talkAboutRects

Related Topics

Placeholders

button

HyperTalk Definition

An expression that identifies a button by name, number, or id, using one of the following forms:

[card] button id posInteger [of card]
[card] button text [of card] -- name
[card] button posInteger [of card]
ordinal [card] button [of card]
bkgnd button id posInteger [of card]
bkgnd button text [of card] -- name
bkgnd button posInteger [of card]
ordinal bkgnd button [of card]

For example:

card button id 3894
card button "Return"
card button 1
first card button
bkgnd button 2 of card 2
last bkgnd button

When used inside a button script: me

When a button receives a message: [the] target

A button can also be referred to as a part when you’re talking about its position among all buttons and fields within the same card or background.

AppleScript Definition

An expression that identifies a button by name, number, or id, using the same forms as HyperTalk except that “background” must be used in place of “bkgnd”.

rectangle

An expression that evaluates to a rectangle, in the form of four integers separated by commas (and, in AppleScript, enclosed in brackets).

Items 1 and 2 of a rectangle specify the left and top coordinates; items 3 and 4 specify the right and bottom coordinates (in pixels). For example:

0,0,200,250
the rect of card window
"30,30," & "240,240"
{ 10, 35, 250, 300 } --AppleScript form

field

An expression that identifies a field by name, number, or id using one of the following forms (in AppleScript, use “background” in place of “bkgnd”):

card field id posInteger [[of] card]
card field text [of card] -- name
card field posInteger [of card]
ordinal card field [of card]
[bkgnd] field id posInteger [of card]
[bkgnd] field text [of card] -- name
[bkgnd] field posInteger [of card]
ordinal [bkgnd] field [of card]
For example:

card field id 3894

card field "My Notes"

card field 1

first card field

background field 3 of card 1

When used inside a field script in HyperTalk: `me`
When a field receives a message: `[the] target`
A field can also be referred to as a part when you’re talking about its position among all buttons and fields within the same card or background.

card

An expression that identifies a card by name, number, or id using one of the following forms (in AppleScript, use “background” in place of “bkgnd”):

recent card
back
forth
card id posInteger [of bkgnd
card text [of bkgnd] -- name
card posInteger [of bkgnd] -- number
ordinal card [of bkgnd]
position card [of bkgnd]
ordinal marked card
position marked card
marked card posInteger

For example:

card id 3894
card "Index"
card 1 of background 1
prev card
previous card of this background
next card
this card
first card
last card
middle card
any card
first marked card
last marked card
next marked card
previous marked card
marked card 1
marked card (the number of marked cards)

When used inside a card script in HyperTalk: me

When a card receives a message: [the] target

See also: button and field

window

One of HyperCard’s built-in windows, the window containing the current stack (called the card window), or any other window containing a stack, as follows:

card window
tool window
window "tools"
pattern window
window "Patterns"
scroll window
window "scroll"
[the] message [window]
[the] message [box]
[the] msg [window]
[the] msg [box]
window "message"
message watcher
window "message watcher"
variable watcher
window "variable watcher"
window "Home"
window "Readymade Buttons"
-- if longWindowTitles is true:
window "My HD:Home"
window 6
window ID 21403082

Note: If a window containing a stack is inactive, you can set only its location and visible properties.

Important: External windows can’t be substituted for the window placeholder (see the externalWindow placeHolder).

HyperTalk Reference


Version 0.8b4 (July 4, 2025)

Made with Macintosh

Switch to Modern View