Button 球拍变换按钮坐标
我在一帧中有一个按钮,当我在代码中更改Button 球拍变换按钮坐标,button,racket,Button,Racket,我在一帧中有一个按钮,当我在代码中更改垂直边距和水平边距时,按钮不会更改其位置,而是帧变小或变大 代码如下: (require racket/gui/base) (define frame (new frame% [label "GUI BUILDER"] [width 300] [height 400] [style '(no-resize-border)]))
垂直边距
和水平边距
时,按钮不会更改其位置,而是帧变小或变大
代码如下:
(require racket/gui/base)
(define frame (new frame% [label "GUI BUILDER"]
[width 300]
[height 400]
[style '(no-resize-border)]))
(send frame show #t)
(define msg (new message% [parent frame]
[label "Text"]))
(new button% [parent frame]
[label "Generate button code"]
[vert-margin 200]
[horiz-margin 480]
[callback (lambda (button event)
(send msg set-label "Changed"))])
请给出代码示例,我写了这个,但它不起作用:
(require racket/gui/base)
(define frame (new frame% [label "GUI BUILDER"]
[width 700]
[height 700]))
(send frame show #t)
(define coloana (new vertical-panel% [parent frame]))
(define cub1 (new horizontal-panel% [parent coloana]
[min-height 150]))
(define cub2 (new horizontal-panel% [parent coloana]
[min-height 50]))
(define cub3 (new horizontal-panel% [parent cub2]
[min-width 50]))
(define buton (new button% [parent cub1]
[label "Generate button code"]))
frame%
默认具有可拉伸的宽度和高度。
而不是使用边距将按钮放置在特定位置,
我建议将空面板放在按钮的顶部和左侧
#lang racket
(require racket/gui/base)
(define frame
(new frame% [label "GUI BUILDER"]
[width 300]
[height 400]
[style '(no-resize-border)]))
(define row1
(new horizontal-panel%
[parent frame]
[min-width 300]
[min-height 50]
[style '(border)]
[stretchable-height #f]))
(define row2
(new horizontal-panel%
[parent frame]
[stretchable-height #f]))
(define row3
(new horizontal-panel%
[parent frame]
[style '(border)]
[stretchable-height #t]))
(define col-2-1 ; row 2 column1
(new vertical-panel%
[parent row2]
[min-width 100]
[style '(border)]
[stretchable-height #t]))
(new message% [parent row1] [label "row1"])
(new message% [parent col-2-1] [label "col-2-1"])
(new message% [parent row3] [label "row3"])
(define button-msg (new message% [parent row1] [label "Text "]))
(define button (new button%
[parent row2]
[label "Click"]
[vert-margin 0]
[horiz-margin 0]
[style '(border)]
[callback (λ (button event)
(send button-msg set-label "Changed"))]))
(send frame show #t)
A
frame%
默认具有可拉伸的宽度和高度。
而不是使用边距将按钮放置在特定位置,
我建议将空面板放在按钮的顶部和左侧
#lang racket
(require racket/gui/base)
(define frame
(new frame% [label "GUI BUILDER"]
[width 300]
[height 400]
[style '(no-resize-border)]))
(define row1
(new horizontal-panel%
[parent frame]
[min-width 300]
[min-height 50]
[style '(border)]
[stretchable-height #f]))
(define row2
(new horizontal-panel%
[parent frame]
[stretchable-height #f]))
(define row3
(new horizontal-panel%
[parent frame]
[style '(border)]
[stretchable-height #t]))
(define col-2-1 ; row 2 column1
(new vertical-panel%
[parent row2]
[min-width 100]
[style '(border)]
[stretchable-height #t]))
(new message% [parent row1] [label "row1"])
(new message% [parent col-2-1] [label "col-2-1"])
(new message% [parent row3] [label "row3"])
(define button-msg (new message% [parent row1] [label "Text "]))
(define button (new button%
[parent row2]
[label "Click"]
[vert-margin 0]
[horiz-margin 0]
[style '(border)]
[callback (λ (button event)
(send button-msg set-label "Changed"))]))
(send frame show #t)
有没有更优雅的解决方案?我不知道。我觉得应该有一个容器,你可以简单地用坐标来放置容器。如果这里没有人回答,一定要问球拍邮件列表。所以,我应该制作两个面板,一个在左边,一个在按钮顶部,然后将两者都添加?作为家长的按钮,从他们创建一个空白?我怎么才能为一个按钮添加两个面板作为父面板呢?这个想法是在框架中创建两行。在前两个中,放置一个水平面板,其高度将决定按钮的y位置。在第二行中,首先放置水平面板,然后放置按钮。水平面板的宽度将决定按钮的x位置。因此1。做一个框架。2.制作一个垂直面板以容纳行。3.将填充板放在垂直面板上。有没有更优雅的解决方案?我不知道。我觉得应该有一个容器,你可以简单地用坐标来放置容器。如果这里没有人回答,一定要问球拍邮件列表。所以,我应该制作两个面板,一个在左边,一个在按钮顶部,然后将两者都添加?作为家长的按钮,从他们创建一个空白?我怎么才能为一个按钮添加两个面板作为父面板呢?这个想法是在框架中创建两行。在前两个中,放置一个水平面板,其高度将决定按钮的y位置。在第二行中,首先放置水平面板,然后放置按钮。水平面板的宽度将决定按钮的x位置。因此1。做一个框架。2.制作一个垂直面板以容纳行。3.将填充板放置在垂直面板中。