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