2016-04-11 24 views
0

Birden çok düğmeyi içeren birden fazla düğmeli bir web sayfası oluşturmaya çalışıyorum. Kod şöyle:GWT Açılır Penceresinde Birden Fazla Düğme

final PopupPanel jal2 = new PopupPanel(); 
     jal2.show(); 
     organizeFolders.addClickHandler(new ClickHandler() 
     { 
       @Override 
       public void onClick(ClickEvent event) 
       { 
        Window.alert("Red Button clicked!"); 
       } 
     }) 
     ; 
     organizeIntoFolders.addClickHandler(new ClickHandler() 
     { 
      @Override 
      public void onClick(ClickEvent event) 
      { 
       Window.alert("Red Button clicked!"); 
      } 
     }) 
     ; 
     organizeFiles.addClickHandler(new ClickHandler() 
     { 
      @Override 
      public void onClick(ClickEvent event) 
      { 

       Button filesNames= new Button("Files according to names"); 
       Button fileTypes = new Button("Files according to their file types"); 
       Button fileAuthors = new Button("Files according to their authors"); 
       Button fileAlbums = new Button("Files according to their albums"); 
       filesNames.setStyleName("filesNames"); 
       filesNames.setSize("0.5px", "0.5px"); 
       fileTypes.setStyleName("fileTypes"); 
       fileTypes.setWidth("5px"); 
       fileTypes.setHeight("5px"); 
       fileAuthors.setStyleName("fileAuthors"); 
       fileAuthors.setWidth("5px"); 
       fileAuthors.setHeight("5px"); 
       fileAlbums.setStyleName("fileAlbums"); 
       fileAlbums.setWidth("5px"); 
       fileAlbums.setHeight("5px"); 
       jal2.addStyleName("popup"); 
       jal2.setSize("400px", "400px"); 

       jal2.add(filesNames.asWidget()); 
       jal2.add(fileTypes.asWidget()); 
       jal2.add(fileAuthors.asWidget()); 
       jal2.center(); 
       jal2.show(); 
       jal2.setVisible(true); 
       jal2.add(fileAlbums.asWidget()); 

      } 
     }) 
     ; 

Bu kod yalnızca bir PopUp büyüklüğünde düğme olarak "adlarına göre dosyaları" açılır: http://s558.photobucket.com/user/magpiejay/media/button_zpskgbfgwtd.jpg.html

Ne yerine yapmak niyetinde değilim geçerli:

  • olan düğmeler var uygun büyüklükte.
  • Sadece eklenen ilk widget değil, tüm düğmeleri görün.
  • Ve düzgün düzgün boyutlandırılır this

cevap

0

mü düğmeleri mevcut .center() yöntemi sonuçları gibi, Popup ortalamak için bir yol bulmak mümkünse:
yerine ayar Düğme yüksekliği ve genişliği setHeight("5px") ile boyutu, .setStyleName("fileAuthors"); ile ayarlandığınız CSS Stilinde ayarlayabilirsiniz. fileAuthors class'unuza width: 50px;and height:20px;'u ekleyin.
Herhangi bir boyut eklemezseniz, Düğmeler, üzerlerinde belirlediğiniz metne göre bir boyuta sahip olur. katma ilk

-See tüm düğmeleri, sadece bir widget'ı:
PopupPanelSimplePanel uzanır ve sadece bir Widget eklenmesini sağlayan. Tüm Düğmeleri doğrudan PopupPanel numarasına eklemek yerine önce bir kap ekleyin ve ardından bu kutuyu tüm Düğmeler ekleyin. Örnekte gösterildiği gibi yaparsanız, aynı zamanda merkez yöntemi de çalışmalıdır. Ayrıca tüm bu center() yöntemle yapılır beri çağrı show() görünür ve ne ayarlamak zorunda değilsin

Örnek (Belki Javadoc okuyun).

organizeFiles.addClickHandler(new ClickHandler() 
     { 
      @Override 
      public void onClick(ClickEvent event) 
      { 
         // create a container 
         FlowPanel container = new FlowPanel(); 
         Button filesNames = new Button("Files according to names"); 
         Button fileTypes = new Button("Files according to their file types"); 
         Button fileAuthors = new Button("Files according to their authors"); 
         Button fileAlbums = new Button("Files according to their albums"); 
         filesNames.setStyleName("filesNames"); 
         filesNames.setSize("50px", "20px"); 
         fileTypes.setStyleName("fileTypes"); 
         fileTypes.setSize("50px", "20px"); 
         fileAuthors.setStyleName("fileAuthors"); 
         fileAuthors.setSize("50px", "20px"); 
         fileAlbums.setStyleName("fileAlbums"); 
         fileAlbums.setSize("50px", "20px"); 

         jal2.addStyleName("popup"); 
         jal2.setSize("400px", "400px"); 

         container.add(filesNames); 
         container.add(fileTypes); 
         container.add(fileAuthors); 
         container.add(fileAlbums); 
         //set only the widget into the popuppanel 
         jal2.setWidget(container); 
         jal2.center(); 

      } 
     }) 
     ; 
+0

Bu, uygun bir panel, sadece yüzen düğmeler sağlamaz. –

+0

http://s558.photobucket.com/user/magpiejay/media/Balksz4_zpsd9doanmq.jpg.html –

+0

Görünüşe göre, bir yerlerde pop-up stilini geçersiz kılıyorsunuz. Stillerinizden herhangi birini ayarlamadan, ancak standart olanları kullanmadan çalışmayı deneyin. Bu çalışma stillerinizi tekrar eklemeye çalıştığınızda – Tobika

İlgili konular