Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi 2

Автор: Yogi Bear
Дата сообщения: 30.12.2006 02:52
Не удержусь от флуда. С Новым Годом всех!! Счастья и успехов!!
Автор: Jokerjar
Дата сообщения: 30.12.2006 07:48
Пытаюсь отослать из приложения в приложение (при помощи сообщения wm_copydata) следущую структуру:


Код: type
Rec = record
s1,s2: string;
i: integer;
end;
Автор: RomanTim
Дата сообщения: 30.12.2006 09:23
S0ldier
А нормально описать что нужно не бывает - телепаты довольно большая редкость

megadave
В варезнике есть тема по платным компонентам

Добавлено:
Jokerjar
string - это примерно то же, что и динамический массив, в переменной лежит указатель на память строки и размер. Когда ты передаешь этот указатель в другое приложение он становится бессмысленным.
Попробуй в рекорде описать строки в виде статических массивов из чаров
Автор: S0ldier
Дата сообщения: 30.12.2006 12:47
RomanTim

Цитата:
А нормально описать что нужно не бывает - телепаты довольно большая редкость

Да вроде вполне доступно описано.
В Edit вводим $00006F, при нажатии на Button вызываем Seek($00006F, soFromBeginning). Как преобразовать?
Автор: SERGE_BLIZNUK
Дата сообщения: 30.12.2006 13:47

Цитата:
Button вызываем Seek($00006F, soFromBeginning).

и что - приведённый вами код работает?!?! Точнее хотя компилируется?..
вроде в seek первым параметром же идёт файловая переменная?
(procedure Seek(var F; N: Longint);)
у меня попытка скомпилировать ваш пример даёт "Incompatible types"

Добавлено чуть позже...

дело в том, что ваш seek - это метод у TFileStream:
function Seek(Offset: Longint; Origin: Word): Longint;
тогда так, как вам уже сказали раньше:

Код:
var
// fs : TFileStream;
MyOffset : Integer;
begin
MyOffset := StrToInt( Edit1.Text);
fs.Seek( MyOffset, soFromBeginning);
Автор: S0ldier
Дата сообщения: 30.12.2006 16:03
SERGE_BLIZNUK
Всё верно, я сказал просто для примера. У меня и создаётся FileStream...

Добавлено:
Кажется нашёл ошибку.
Автор: JonyBes
Дата сообщения: 31.12.2006 10:07
Как посчитать колличество открытых(а не созданных) страниц.
пробую делать так:
W:=GetActivOleObject('Word.Application );
for i=0 to w.documents.count -1

Данная хрень возвращает только единицу. Как сделать правильнее?
Автор: andead
Дата сообщения: 31.12.2006 10:17
кто-нибудь пробовал доделывать Audio Tools Library 2.3 под теги версии 2.4?
Автор: andead
Дата сообщения: 01.01.2007 23:14
оки, посоветуйте тогда компаненты для чтения тегов ID3v2.4 под BDS2006
Автор: JonyBes
Дата сообщения: 02.01.2007 08:34
Всех с Новым Годом!
В проекте множество форм. Формы загружаются и выгружаются из памяти по необходимости. Не пойму как сделать переменную на главной форме, чтобы видна была из других форм. Делаю так :


uses
Windows, Messages, SysUtils...
type
TForm1 = class(TForm)
....
var
Form1: TForm1;
patch, nomer:string;//- вот мои переменные.
Что-то из других форм не видны.
Как правильнее?

Добавлено:
Всех с Новым Годом!

Хочу поставить прогресбар на время копирования файлов. Вот код :

word.ActiveDocument.SaveAs('\\Super\D\Base_UFSKN\Documents\'+patch+'\'+files);

Копирование идет по сети с клиента, т.ч. при большом документе процесс довольно долгий. Чтобы на клиентской части в это время не было паники - нужен индикатор процесса.
Автор: SERGE_BLIZNUK
Дата сообщения: 02.01.2007 10:33
JonyBes
Цитата:
как сделать переменную на главной форме, чтобы видна была из других форм
просто в тех формах, где нужно иметь доступ к вашей переменной нужно добавить в uzes имя главной формы (лучше в секции implementation)

Код: implementation
uses unit1;
Автор: RostY
Дата сообщения: 02.01.2007 11:53
JonyBes
в других формах в uses напиши модуль формы, где описаны переменные
Автор: Zver1992
Дата сообщения: 02.01.2007 20:39
Имеется файл 2.txt в котором находится обычная html страничка. В ней возможно имеется текст 10woodЛЮБЫЕЧИСЛА. Нужно вырезать именно эти любые числа, идущие за 10wood. После любых чисел идет символ &, до 10wood символ =. Как это сделать?
Автор: RomanTim
Дата сообщения: 02.01.2007 23:29
Zver1992
sl := TStringList.Create;
sl.LoadFromFile('2.txt');
s := sl.Text;
sl.Free;
Delete(s, 1, Pos('=10wood', s)+6);
Result := Copy(s, 1, Pos('&', s)-1);
Автор: SERGE_BLIZNUK
Дата сообщения: 02.01.2007 23:52
Zver1992
Цитата:
10woodЛЮБЫЕЧИСЛА
вариантов много. Основные - либо использовать регулярные выражения (библиотек много, смотри, например, бесплатную библиотеку http://regexpstudio.com/Downloads/regexpr_RU.rar), либо тупо читать файл в TFileStream, перебирать там по символу и искать там 10wood, потом выбирать пока только цифры...
(пример можно и накидать).
Если у Вас в файле только одно выражение, тем более так чётко заданное, я бы выбрал второй вариант.

Добавлено:
блин, пока писал, RomanTim уже рабочий вариант кинул ;-)))
Автор: xokc
Дата сообщения: 03.01.2007 17:35
Zver1992
RegExp рулит. Универсально и модно.
Автор: RostY
Дата сообщения: 04.01.2007 10:57
xokc
Для вышеприведенного случая использование универсального и модного RegExp -- стрельба из пушки по воробьям
Автор: oan42
Дата сообщения: 04.01.2007 14:45
Zver1992, RostY
Регулярные выражения для данного случая - это не подходящий инструмент.
Нужно использовать синтаксический анализатор HTML.
Воробьев стрелять не хорошо, тем более своими ручками
Автор: afiget
Дата сообщения: 04.01.2007 16:41
oan42
Чем же поможет
Цитата:
синтаксический анализатор HTML
в выборке подстроки, не являющейся ни тэгом, ни даже полным содержимым (а только частичным) блока?

+1 за вариант RomanTim

RegExp будет излишеством при заданных условиях.

Автор: oan42
Дата сообщения: 04.01.2007 23:15
afiget
Вы когда-нибудь пользовались HTML-парсером?
Если да, то каким?

Спрашиваю не просто так, - ищу навороченный HTML-парсер.

К сожалению DIHTMLParser с полными исходниками пока не попадался,
из Open Source что-то не встретил ничего стоящего.

Хотелось бы на уровне Turbopower XMLPartner Professional.

Kustarnik когда-то поднимал тему лучшего HTML-парсера, но она не нашла отклика.
Автор: greenpc
Дата сообщения: 05.01.2007 10:27
oan42
пользую SimDesign NativeXml
пока доволен
Автор: oan42
Дата сообщения: 05.01.2007 13:03
greenpc
С XML мне все понятно, хотелось бы про хороший HTML-парсер на Delphi
что-нибудь разузнать.
Автор: afiget
Дата сообщения: 05.01.2007 17:30
oan42
Когда-то сам искал. Не нашел. Очевидно, по причине слишком мягкотелости стандартов HTML, в отличие от XML, очень трудно сделать мощный и правильно работающий парсер.
А потом получил распространение XML и вопрос почти отпал :)
Автор: Jokerjar
Дата сообщения: 06.01.2007 05:12
Как сделать значок в трее неактивным (чтоб скрывался). Ничего похожего в NotifyIconData не нашел. Компоненты не предлагать.
Автор: Wiki
Дата сообщения: 06.01.2007 08:24
Подскажите, пожалуйста, как получить выделенный элемент списка ListBox?
Автор: SERGE_BLIZNUK
Дата сообщения: 06.01.2007 08:51
Wiki
Цитата:
получить выделенный элемент списка ListBox
перебором.
из справки по Delphi:

Код:
for i := 0 to (FileListBox1.Items.Count - 1) do begin
try
if FileListBox1.Selected[i] then
....
finally
{ do something here }
end;
end;
Автор: Jokerjar
Дата сообщения: 06.01.2007 10:20

Цитата:
перебором.

А так нельзя?

Код: if ListBox1.ItemIndex > -1 then
Edit1.Text := ListBox1.Items[ListBox1.ItemIndex];
Автор: SERGE_BLIZNUK
Дата сообщения: 06.01.2007 11:30
Jokerjar
Цитата:
перебором.
А так нельзя?

можно, если только не используется MultiSelect = true

Автор: Wiki
Дата сообщения: 07.01.2007 02:57
Спасибо большое. Очень выручили
Автор: Wiki
Дата сообщения: 07.01.2007 09:01
А как можно получить текст какой-нибудь ячейки выделенной строки DBGridа?

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Событие STFilter(DBGridEh) ???


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.