ScrollWith - это логическая ширина списка, от которой зависит появится горизонтальная полоса прокрутки или нет. Как я понимаю, просили не отобразить полосы прокрутки, а показать как сделать так, чтобы при добавлении нового элемента он был виден за счет прокрутки. Не знаю насколько такое решение грамотно, но можно при добавлении элемента в ListBox изменять свойство TopIndex (первая сверху отображаемая строчка) на индекс последней строки. Code: procedure AddListBoxItem; var data: string; begin { здесь производятся нужные действия для формирования строки, которая будет добавлена } ListBox1.add(data); ListBox1.TopIndex := ListBox1.Items.Count -1; end; В принципе все прокрутится Хотя стоило бы наверное от индекса последней строки отнимать количество отображаемых строк.
Люди как можно считать текст из односстрочного редактора edit средствами WinApi Пробывал просто Code: GetwindowText(h,buf,255) но не получилось. Подсткажите. И еще вопрос: как можно распознать типа кнопки? делаю Code: getclassname(wnd,op,255); возвращает button на маркеры, чек-кнопки. Надо както распознать.
Code: //text - переменная типа string SetLength(text, 80); GetWindowText(edit1.Handle, pansichar(text), 80); Вроде бы так...
неполучилось В текстовую перменную ложит одни пробелы. пытался вывести через showmessage размер диалога был большой а ничо не написано.
Adalt поробуй не строку передавать а массив чаров типа Code: Str:array[0..255] or char; дожно быть все нормально
Code: begin AssignFile(Text, 'data/text1.txt'); Reset(Text); while not Eof(Text) do begin ReadLn(Text, Data); Edit1.Text := Data; end; CloseFile(Text); end. Ошибка в такой легкой задачи... все компилиться, но текст из фпйла не выводит в эдит, хотя текст в файле есть. Что делать?
Need your help again... 1)Складіть програму для обчислення суми всіх трьохзначних чисел, кратних 25. rus:Составьте программу для вычисления суммы всех трехзначительных чисел, кратных 25. 2)Для кожного стовпця матриці знайти значення та індекс максимального елемента. rus:Для каждого столбца матрицы найти значение и индекс максимального элемента. помогите, плз....
Code: var a:array[1..1000] of integer; procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin Memo1.Clear; for i:=1 to 900 do begin a[i]:=99+i; Memo1.Lines.Add(IntToStr(a[i])); end; end; procedure TForm1.Button2Click(Sender: TObject); var i,s:integer; begin s:=0; for i:=1 to 900 do begin if a[i] mod 25=0 then begin s:=s+a[i]; end; end; Label1.Caption:=IntToStr(s); end; Как понять, для каждого столбца матрици найти значение? Какое значение то ?
Нет так не получается. Поэтому и написал сюда вот у меня так Code: var buf:array[0..1000] of char; GetWindowText(wnd, buf, 255); showmessage(buf); Этот вариант хорошо подходит в случае, когда у нас имеется button или другие классы. А в случает с Edit совсем е катит. пробывал еще так: Code: GetDlgItemText(wnd, getwindowlong(wnd,GWL_ID), buf, 255); Тоже не получается
Я так понял, что номер и значение максимального элемента в столбце. TPAXTOP, лови: Code: const n=3; var i,j:integer; a:array[1..n, 1..n] of integer; max, index:integer; begin for i:=1 to n do for j:=1 to n do readln (a[i,j]); for i:=1 to n do begin max:=0; for j:=1 to n do if a[j,i]>max then begin max:=a[j,i]; index:=j; end; writeln ('max = ', max, 'index = ', index); end; end. Впринципе, выводит только номер max-элемента в столбце, просто я так понял. Можно организовать выдачу и номера самого столбца, и строки.
Ну после исполнения кода в edit должна вывестись последняя строчка текстового файла. Если в конце файла пустая строка - то в эдите ничего и не будет. Если нужен весь текст, то попробуй так: Code: ... ReadLn(Text, Data); Edit1.Text := [COLOR=Red]Edit1.Text + [/COLOR]Data; ...
Не работает...эдит как был пустым так им и остался. В чем проблема я не знаю. ------------------------------------------ Поставил такой код: Code: begin Data := 'fgd'; AssignFile(Text, 'data/text1.txt'); Reset(Text); Edit1.Text := Data; CloseFile(Text); end. Тоже не работает. Это вообще не понятно почему. ------------------------------------------ Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; private { Private declarations } public { Public declarations } end; var Form1: TForm1; Edit1: TEdit; Text: TextFile; Data: string; implementation {$R *.dfm} begin Data := 'fgd'; AssignFile(Text, 'data/text1.txt'); Reset(Text); Edit1.Text := Data; CloseFile(Text); end. Вот весь код
Ну как бы... У тебя объявлена глобальная переменная Edit1 типа TEdit, при этом нужный тебе edit является полем класса TForm1. И использовать его можно только после создания формы. Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} [COLOR=Red]procedure TForm1.FormShow(Sender: TObject);[/COLOR] var Text: TextFile; Data: string; begin Data := 'fgd'; AssignFile(Text, 'data/text1.txt'); Reset(Text); Edit1.Text := Data; CloseFile(Text); end.
Code: function GetIndex(str: string; var Memo: TMemo): integer; var i: integer; begin Result := 0; with Memo do for i := 0 to Lines.Count - 1 do if (Pos(str, Lines[i]) <> 0) then begin Result := i; exit; end; end; procedure TForm1.Button1Click(Sender: TObject); var str: string; begin str := '727GBh11cy'; ShowMessage(IntToStr(GetIndex(str, Memo1))); end; Вроде бы так, если я правильно понял суть вопроса...
ЖОПА. ничего не работает. и еще почему то нод32 ругаеться, мол вирусы. хотя раньше не ругался, и эдит раньше работал. Кто - нибудь, если не лень, скиньте мне исходник на дельфи с работающим кодом вывода в эдит чего - нибудь. Типо Edit1.Text := '2121'.