2017-07-14 4 views
0

私が働いているLiveCodeアプリケーションのカードの1枚のスクリーンショットが以下に表示されます。ユーザは、アイコンをクリックして画面上で移動させることができ、理想的には右のボックスを使用して順位を並べることができます。アイコンの順位を記録するために、私はy座標を取得したいと思います。つまり、y座標値が高いほど順位が低くなります。私はどのように画像の座標を変数に渡すのか困惑しています。私はLiveCodeをかなり新しくしているので、どんな助けも大歓迎です。 rating_screenshotLiveCodeの画像のx、y座標を渡す

答えて

0

LiveCodeへようこそ!

the loc of image ”imagename”

あなたがプロシージャに変数として渡すことができますLiveCodeで

あなたが属性を持っています。それには、イメージ(または任意のコントロール)のx がカンマで区切られています。ちょうどyを取得するには、その2番目の項目を取得する必要があります。だからあなたはあなたの手続きでそれをつかむことも、それを渡すときに直接手に入れることもできます。 saveOrderという手続きがあり、何らかの方法でデータを保存しているとします。あなただけではなく item 2 of the locの代わりに the topまたは the bottomを使用することができ、他のよりも高い画像を決定するために何かをつかむしたい場合

saveOrder item 2 of the loc of image “imagename” 

:あなたは、y座標のようにしていることを呼び出すことができます。

PS the locthe locationための短いです...更なる説明のための辞書でそれらを見て、あなたはそれが

+0

@ hliljegren - ありがとう、素晴らしい作品!ちなみに、LiveCodeのOOPであなたの投稿を楽しんでいます。 – credenzamatic

0

だけでエクササイズを好む場合はもちろん、あなたはそれを書くことができます。新しいカード上に2つのボタンを作ります。カードスクリプトで:

on mouseMove 
    if "button" is in the name of the target and the mouse is down then 
    set the loc of the target to the mouseLoc 
    put item 2 of the loc of the target 
    end if 
end mouseMove 

ボタンをクリックして、それを周りにドラッグします。ドラッグすると、ボタンの中央の「Y」座標がメッセージボックスに表示されます。もちろん、あなたが離すと、最後の座標が固執します。

hliljegrenが指摘しているように、あなたは中心を望んでいないかもしれませんが、興味のあるコントロールの上または他の点を望むかもしれません。

0

あなただけの必要があります。

on MouseDown 
    grab me 
end MouseDown 

Livecodeは、世界で最もシンプルかつ効率的な言語であります!

関連する問題