powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TtreeNodes
15 сообщений из 65, страница 3 из 3
TtreeNodes
    #38546236
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RESEARCH,

Вы все еще кипятите (BDE)?! (c)
...
Рейтинг: 0 / 0
TtreeNodes
    #38546984
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RESEARCHу TQuery не работает свойство RecNo

а оно и не обязано
...
Рейтинг: 0 / 0
TtreeNodes
    #38547079
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие нафиг букмарки ? запоминайте ключевое поле(поля), а потом его ищите. Да хоть тем же Локейтом.

Букмарки - жутко ненадежная вещь.
...
Рейтинг: 0 / 0
TtreeNodes
    #38547355
RESEARCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я думаю с точки зрения производительности букмарки быстрее чем локейт, по сути просто указатель на запись. Тем более что ключевое поле типа String. TQuery статический набор поэтому букмарки на нем отрабатывают нормально без сбоев.
...
Рейтинг: 0 / 0
TtreeNodes
    #38548012
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RESEARCHЯ думаю с точки зрения производительности букмарки быстрее чем локейт, по сути просто указатель на запись. Тем более что ключевое поле типа String. TQuery статический набор поэтому букмарки на нем отрабатывают нормально без сбоев.
RESEARCH, Вы и о нормализации баз ничего не слышали?
...
Рейтинг: 0 / 0
TtreeNodes
    #38561143
RESEARCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребятки как вы смотрите на идею инкапсулировать данные непосредственно в ноду вместо указания ссылки на датасеты ?
Как думаете прокатит такая идея

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
  TDSENode = class (TTreeNode)
    function SetData(Q:TDataSet):String;
    function ShowText(VX:String):String;
    function GetNext: TDSENode;
    public
    IX: String;
    PRR: Byte;
    CUDA,CHTO,NAM: String;
    LCHTO,LNAM: String;
    KVO: Real;
    PIC: String;
    Level:Byte;
    Stat: TDSEState;
  end;
...
Рейтинг: 0 / 0
TtreeNodes
    #38561157
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
TtreeNodes
    #38561170
Фотография Feg16
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tosh1. не получается это не описание ошибки или результата работыменеджер по продажамФраза "а всякая херня" не описывает полный ассортимент предлагаемой продукции
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
TtreeNodes
    #40098550
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Позанимаюсь некрофилией.

Заполняю дерево узлами с простейшим текстом стандартным образом. Но после отрисовки получаю узлы с недостаточной шириной текста (короткий узел с обрезом текста справа, при этом места в ширину предостаточно). Когда делал раньше, с этим не сталкивался. Delphi 2010. Где может быть засада?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
procedure TInsertICDForm.FillTree;
var N, N1: TTreeNode;
    parntidx, idx, j, oldparentid: Integer;
begin
 ICDTree.Visible:=False;
 N1:=Nil;
 with DataForm.ICDTable, ICDTree
  do begin
      oldparentid:=-1;
      Items.BeginUpdate;
      Open;
      while not EOF
       do begin
           idx:=Fields [0].AsInteger;
           parntidx:=Fields [1].AsInteger;
           if oldparentid<>parntidx
            then begin
                  N1:=nil;
                  for j:=0 to Items.Count-1
                   do if Integer (Items [j].Data)=parntidx
                       then begin
                             N1:=Items [j];
                             oldparentid:=parntidx;
                             Break;
                            end;
                 end;
           N:=Items.AddChild (N1, Fields [2].AsString);
           N.Data:=Pointer (idx);
           N.SelectedIndex:=0;
           N.OverlayIndex:=0;
           Next;
          end;
      Close;
      Items.EndUpdate;
      Visible:=True;
     end;
end;
...
Рейтинг: 0 / 0
TtreeNodes
    #40098560
Michael Longneck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воистину прокляты те, кто использует такой with!
...
Рейтинг: 0 / 0
TtreeNodes
    #40098561
Michael Longneck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А по делу - сверьте длину TStringField в вашем квери и длину поля в базе
...
Рейтинг: 0 / 0
TtreeNodes
    #40098562
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про with - на умеренном объеме кода он вполне уместен.

Michael Longneck
А по делу - сверьте длину TStringField в вашем квери и длину поля в базе

Спасибо! В этом дело и оказалось. Скорректировал длину, и все стало нормально.
...
Рейтинг: 0 / 0
TtreeNodes
    #40098599
Michael Longneck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любезный Про with - на умеренном объеме кода он вполне уместен.

На любом количестве кода уместна временная переменная. А вот with с двумя и более объектами категорически неуместен. У себя я заставляю такое убирать
...
Рейтинг: 0 / 0
TtreeNodes
    #40098604
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А зачем прятать дерево?
...
Рейтинг: 0 / 0
TtreeNodes
    #40098812
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fr0sT-Brutal, по привычке прячу на период заполнения.
...
Рейтинг: 0 / 0
15 сообщений из 65, страница 3 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TtreeNodes
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]