На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
  
> Выравнивание закладок вправо
    Как выпровнять закладки в TTabControl вправо?
      Могу посоветовать, но только в терминах WinApi. И к тому же, мне непонятно почему эта статья уехала сюда из раздела C/C++ ? (Это к purpe).

      А чего вправо, то?
      Я делаю закладки равномерные на всю длину диалога. Смотрится бездато.
      1) В редакторе ресурсов устанавливаешь для своего TabControla    Alignment в Fixed Width.
      Т.е. все закладки будут одного размера.
      2) при инициализации диалога в виндовой функции в
      WM_INITDIALOG вписываешь примерно такой текст (привожу его для трех закладок) для своего количества сообразишь по аналогии.

      TC_ITEM tci;
      static HWND hTab;
      RECT RectTab;
      int TWidth,THeight;

      // Это в WM_INITDIALOG
      hTab=GetDlgItem(hwnd,IDT_SYSTAB);// Получим хандле ТабКонтрола
      memset(&tci,0,sizeof(TC_ITEM));
      tci.mask=TCIF_TEXT;
      tci.iImage=-1;
      tci.pszText="О программе";
      TabCtrl_InsertItem(hTab,1,&tci);
      tci.pszText="Журнал";
      TabCtrl_InsertItem(hTab,1,&tci);
      tci.pszText="Работа";
      TabCtrl_InsertItem(hTab,1,&tci);
      // Получим размеры закладки
      if(TabCtrl_GetItemRect(hTab,1,&RectTab)) THeight=RectTab.bottom-RectTab.top;
      else THeight=21; // Цифра получена подбором
      RectTab.left=3;RectTab.top=0;RectTab.right=317;RectTab.bottom=180;//Мои диалоговые координаты TabCtrl
      MapDialogRect(hwnd,&RectTab);// Преобразуем в пикселы
      // Вычислим длинну одной из трех закладок
      TWidth=(int)((RectTab.right-RectTab.left)/3 - 1);
      TabCtrl_SetItemSize(hTab,TWidth,THeight);
      // Вводится для первого показа диалога Hello
      if(hTab) hDlg=CreateDialog(hInst,MAKEINTRESOURCE(DIALOG_HELLO),hTab,(DLGPROC)Hello);

      И закладочки будут ровненько на весь диалог.
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0323 ]   [ 16 queries used ]   [ Generated: 3.05.24, 03:58 GMT ]