Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  1 474

•  TDictionary Custom Sort  4 162

•  Fast Watermark Sources  3 848

•  3D Designer  5 932

•  Sik Screen Capture  4 109

•  Patch Maker  4 656

•  Айболит (remote control)  4 563

•  ListBox Drag & Drop  3 728

•  Доска для игры Реверси  89 307

•  Графические эффекты  4 897

•  Рисование по маске  3 919

•  Перетаскивание изображений  3 301

•  Canvas Drawing  3 598

•  Рисование Луны  3 396

•  Поворот изображения  2 895

•  Рисование стержней  2 568

•  Paint on Shape  1 973

•  Генератор кроссвордов  2 738

•  Головоломка Paletto  2 160

•  Теорема Монжа об окружностях  2 841

•  Пазл Numbrix  1 945

•  Заборы и коммивояжеры  2 515

•  Игра HIP  1 557

•  Игра Go (Го)  1 493

•  Симулятор лифта  1 766

•  Программа укладки плитки  1 513

•  Генератор лабиринта  1 878

•  Проверка числового ввода  1 629

•  HEX View  1 810

•  Физический маятник  1 649

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Многострочный TStringGrid



Изобрели суперкомпьютер. Позвали англичанина, немца и русского колхозника и сказали:
- Назовите два числа и компьютер произведет с ними любую операцию. Если он не сможет посчитать, вы получите кучу денег!
Англичанин называет 10^6581 - компьютер все посчитал и его выгнали. Немец называет 236^65468749846 - компьютер все посчитал и его тоже выгнали.
Русский говорит:
- До х#я...
Компьютер зависает. Изобретатели посовещались и решили:
- Поехали к нему в колхоз, наверное, у них там все такие умные!
Приезжают в колхоз, смотрят - мужик поле косит. Подходят к нему и спрашивают:
- Мужик, скажи, а "до х#я" это много?
- Да как вам сказать... Видите поле, которое я кошу? Это до х#я.
- Не поняли... А вот поле через дорогу - это тоже до х#я?
- А это соседское, это до п#зды!!!

...да, но вы должны перекрыть событие OnDraw. Ниже приведен пример, делающий заголовок многострочным, центрированным и с жирным шрифтом:


// if Dispatch.GetIDsOfNames(GUID_NULL, @NameRefs, NameCount,

procedure TForm1.grid1DrawCell(Sender: TObject; Col, Row: Longint;
  Rect: TRect; State: TGridDrawState);
var
  l_oldalign: word;
  l_YPos, l_XPos, i: integer;
  s, s1: string;
  l_col, l_row: longint;
begin
  l_col := col;
  l_row := row;
  with sender as tstringgrid do
  begin
    if (l_row = 0) then
      canvas.font.style := canvas.font.style + [fsbold];
    if l_row = 0 then
    begin
      l_oldalign := settextalign(canvas.handle, ta_center);
      l_XPos := rect.left + (rect.right - rect.left) div 2;
      s := cells[l_col, l_row];
      while s <> '' do
      begin
        if pos(#13, s) <> 0 then
        begin
          if pos(#13, s) = 1 then
            s1 := ''
          else
          begin
            s1 := trim(copy(s, 1, pred(pos(#13, s))));
            delete(s, 1, pred(pos(#13, s)));
          end;
          delete(s, 1, 2);
        end
        else
        begin
          s1 := trim(s);
          s := '';
        end;
        l_YPos := rect.top + 2;
        canvas.textrect(rect, l_Xpos, l_YPos, s1);
        inc(rect.top, rowheights[l_row] div 3);
      end;
      settextalign(canvas.handle, l_oldalign);
    end
    else
    begin
      canvas.textrect(rect, rect.left + 2, rect.top + 2, cells[l_col, l_row]);
    end;

    canvas.font.style := canvas.font.style - [fsbold];
  end;
end;





Похожие по теме исходники

TStringGridCheker




Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте