Sha256: d2b7176f7bbdd977aa8175c5103688b97e49b93f8a165a89570974fa2ac8d2b5

Contents?: true

Size: 1.9 KB

Versions: 1

Compression:

Stored size: 1.9 KB

Contents

require 'fox16'
include Fox
require_relative 'controller'
require_relative 'dialog_create_student'
require_relative '../database_labs/tab_lab'
require_relative '../database_labs/tab_student'
class Window < FXMainWindow
  def initialize(app)
    super(app, "Students", width: 1100, height: 800) # увеличиваем размер главного окна
    create_tabs
  end

  def create
    super
    #@controller.refresh_data(@current_page, @students_on_page)
    @first_tab.refresh
    show
  end

  def create_tabs
    tab_book = FXTabBook.new(self, :opts=>LAYOUT_FILL_X|LAYOUT_FILL_Y)
    # Создаем первую вкладку
    tab1 = FXTabItem.new(tab_book, "Вкладка 1", nil)
    composite1 = FXComposite.new(tab_book, LAYOUT_FILL_X|LAYOUT_FILL_Y)
    @first_tab = TabStudent.new(composite1)
    @first_tab.resize(1000,1000)

    # Создаем вторую вкладку
    tab2 = FXTabItem.new(tab_book, "Вкладка 2", nil)
    composite2 = FXComposite.new(tab_book, LAYOUT_FILL_X|LAYOUT_FILL_Y)
    @second_tab = TabLab.new(composite2)
    @second_tab.resize(1000,1000)

    tab3 = FXTabItem.new(tab_book, "Вкладка 3", nil)
    composite3 = FXComposite.new(tab_book, LAYOUT_FILL_X|LAYOUT_FILL_Y)

    tab_book.connect(SEL_COMMAND) do |sender, selector, data|
      # Получаем индекс текущей вкладки
      current_tab_index = sender.current
      # Обновляем данные в соответствии с текущей вкладкой
      case current_tab_index
      when 0
        # для первой вкладки
        @first_tab.refresh
        when 1
          # для второй вкладки
           @second_tab.refresh
        # when 2
        #   # для третьей вкладки
        #   @controller.refresh_data_for_tab3
      end
    end
  end

  private


end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
shanti555890-1.1.4 lib/source/database/window.rb