मुख्य सामग्री पर जाएँ
CrossFly 100% ओपन सोर्सGitHub पर फ़ॉलो करें
CrossFlyCrossFly
शुरू करें

यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।

GridLayout

बच्चों को एक ग्रिड में व्यवस्थित करता है: प्रत्येक पंक्ति का अपना भिन्न द्वारा स्तंभों का विभाजन होता है, और पंक्ति की ऊँचाई सबसे ऊँचे घटक से आती है। “लेबल : फ़ील्ड” फ़ॉर्म के लिए उत्तम।

🟡 · पैकेज: dev.crossfly.ui.layout · विस्तार करता है: Layout

कब उपयोग करें

  • स्थिर अनुपात के साथ संरेखित फ़ॉर्म (लेबल | फ़ील्ड)।
  • सेल की सरल तालिकाएँ।

कब उपयोग न करें

  • केवल एक स्तंभ → VerticalLayout।
  • एक घटक को दूसरे से जोड़ना → RelativeLayout।

add(...) — हस्ताक्षर और अर्थ (क्रम पर ध्यान दें!)

public GridLayout add(Object... v)   // सभी चौड़ाइयां, फिर सभी कॉम्पोनेंट

पहले सभी चौड़ाइयाँ पास करें, फिर सभी घटक (समान मात्रा):

चौड़ाई अर्थ
> 0 (ex. 0.35f) ग्रिड की चौड़ाई का भिन्न (35%)
LAY_AUTO (0f) स्वचालित चौड़ाई (सेल सामग्री के आकार का उपयोग करता है)

कंस्ट्रक्टर

कंस्ट्रक्टर विवरण
new GridLayout() संरेखण START/START
new GridLayout(Position h, Position v) पंक्तियों का क्षैतिज/ऊर्ध्वाधर संरेखण

पूर्ण उदाहरण (कॉपी करें, पेस्ट करें और चलाएँ)

package com.exemplo;

import dev.crossfly.ui.*;
import dev.crossfly.ui.layout.*;

/** चलाने योग्य मुख्य स्क्रीन। launcher (classname) की ओर संकेत करें और चलाएँ: gradlew :lwjgl3:run */
public class MainWindow extends Window
{
   @Override
   public void onShow() throws Exception
   {
      super.onShow();

      GridLayout form = new GridLayout(Position.START, Position.START);
      // लेबल (35%) | फ़ील्ड (65%) — पहले चौड़ाइयां, फिर कॉम्पोनेंट:
      form.add(0.35f, 0.65f, new Label("Nome"),     new TextField(""));
      form.add(0.35f, 0.65f, new Label("E-mail"),   new TextField(""));
      form.add(0.35f, 0.65f, new Label("Telefone"), new TextField(""));

      Component painel = new Component();
      painel.setLayout(form);

      setLayout(new VerticalLayout(Position.START, Position.START));
      add(LAY_AUTO, new Label("Cadastro"));
      add(LAY_FILL, painel);
   }
}

नीचे दिए गए अंश केवल मूल भाग दिखाते हैं (जो onShow() के अंदर जाता है)। चलाने के लिए, उन्हें ऊपर दिए गए MainWindow ढाँचे में रखें।

बुनियादी उपयोग

GridLayout form = new GridLayout(Position.START, Position.START);
// लेबल (35%) | फ़ील्ड (65%) — पहले चौड़ाइयां, फिर कॉम्पोनेंट:
form.add(0.35f, 0.65f, new Label("Nome"),     new TextField(""));
form.add(0.35f, 0.65f, new Label("E-mail"),   new TextField(""));
form.add(0.35f, 0.65f, new Label("Telefone"), new TextField(""));

Component painel = new Component();
painel.setLayout(form);

यह कैसे व्यवस्थित करता है

┌───────────┬──────────────────────┐
│ Nome (35%)│ [campo]        (65%)  │  ← linha 1
├───────────┼──────────────────────┤
│ E-mail    │ [campo]              │  ← linha 2
└───────────┴──────────────────────┘

अच्छी प्रथाएँ

  • एक पंक्ति के भिन्न चौड़ाई को कवर करने के लिए ~1.0 जोड़ते हैं।
  • पंक्तियों में अलग-अलग स्तंभ संख्याएँ हो सकती हैं (प्रत्येक add एक पंक्ति परिभाषित करता है)।

सामान्य त्रुटियाँ

  • चौड़ाई और घटक को मिलाना: add(0.35f, label, 0.65f, field) → UIException फेंकता है। सही है add(0.35f, 0.65f, label, field) (चौड़ाइयाँ एक साथ, फिर घटक)।
  • चौड़ाइयों की संख्या ≠ घटकों की संख्या → UIException (cols*2 == args)।

यह भी देखें

क्या यह पृष्ठ उपयोगी था?