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

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

Автор: dmit000
Дата сообщения: 09.08.2006 16:46
SERGE_BLIZNUK

А как сделать так чтобы в строке
d: array [1..11] of string=('1,2' , '2,5' , '3,4' , '4' , '5', '6', '7', '8', '9', '10', '11');
программа сама считала сколько элементов в массиве?
//это я про число 11 в строке array [1..11]

вопррос был конкретный. ещё раз привёл
строка Low(d) to High(d) do это красиво н мне нужно решение по числу элементом массива при его описании
Автор: OdesitVadim
Дата сообщения: 09.08.2006 18:55
dmit000
Length(d) ???
Автор: SERGE_BLIZNUK
Дата сообщения: 09.08.2006 19:05
dmit000

Цитата:
программа сама считала сколько элементов в массиве?

ой, странного вы хотите ;-)))
так не получится.

Но можно перейти на такой подход:

Код:
в описании
const
{обратите внимание точка-запятая - разделитель}
DArray = ('1; 2.3; 2.5; 17.045 ; 134,45');
...
код добавления в комбобокс на OnCreate
var sAll, sItem : string;
begin
sAll := Trim( DArray + ';' );
while Length( sAll ) > 0 do begin
sItem := Copy( sAll, 1, Pos(';', sAll)-1);
Delete( sAll, 1, Pos(';', sAll));
ComboBox1.Items.Add( Trim(sItem) );
if Pos(';', sAll) = 0 then sAll := '';
end;
end;
Автор: unfreqient
Дата сообщения: 10.08.2006 08:38
Помогите решить проблему: натянул скин на форму и нашёл такой недочёт: при минимизации главной формы - она сворачивается в левый нижний угол, попробавал ShowWindow(Handle, SW_HIDE) - не знаю как её восстановить. Может кто знает как обработать событие нажатия на кнопку приложения на таскбаре, чтобы восстановить.

Добавлено:
Нашёл решение, кому интерестно: добавил компонент TApplicationEvent и всё получилось:

procedure TFrmMain.ApplicationEvents1Activate(Sender: TObject);
begin
ShowWindow(Handle, SW_SHOW);
end;
Автор: greenpc
Дата сообщения: 10.08.2006 09:55
unfreqient
кажись так : ShowWindow(Handle,SW_SHOW);
или showwindow(Handle, sw_restore);
Автор: YuRRiX
Дата сообщения: 10.08.2006 14:58
Как по IP получить MAC?
Автор: SERGE_BLIZNUK
Дата сообщения: 11.08.2006 05:29
YuRRiX
Цитата:
Как по IP получить MAC?
сам не пробовал, поиск по имени
нашел в JclSysInfo.pas ( JEDI Code Library (JCL)) вот это:
function GetMacAddresses(const Machine: string; const Addresses: TStrings): Integer;

Автор: KDPoid
Дата сообщения: 11.08.2006 07:27

Цитата:
А как сделать так чтобы в строке
d: array [1..11] of string=('1,2' , '2,5' , '3,4' , '4' , '5', '6', '7', '8', '9', '10', '11');
программа сама считала сколько элементов в массиве?
//это я про число 11 в строке array [1..11]


Не понял.
Count:=High(d)-Low(d)+1;

Не оно ?
Автор: afiget
Дата сообщения: 12.08.2006 14:40
Помогите, плиз.
Есть форма (например, Form1), которая создается программно (не MDI) из родительской формы. Устанавливаю нужные мне свойства Form1 (разные, в зависимости от режима работы). Делаю Form1.ShowModal.

Код:
if Form1.ShowModal = mrOk then
begin
    // мои действия
end;
Автор: SERGE_BLIZNUK
Дата сообщения: 13.08.2006 08:22

Цитата:
В событии OnShow для формы Form1 пишу нужный мне код.

проверил, действительно close в onShow игнорируется... ;-((

нашел тут Королевство Дельфи такой ответ:
в событии onShow...

Код:
PostMessage (Handle, wm_Close, 0, 0);
Автор: RomanTim
Дата сообщения: 13.08.2006 09:39
afiget
В качестве варианта можно сделать у формы функцию, в которую перенести код из OnShow
[more]function ShowEx: Boolean
begin
try
...
Result := ShowModal = mrOK;
except
Result := False;
end;
end;[/more]
Автор: afiget
Дата сообщения: 13.08.2006 12:02
SERGE_BLIZNUK
RomanTim
Спасибо, буду пробовать.
Автор: pavel chistyakov
Дата сообщения: 15.08.2006 11:10
Подскажите пожалуйста как мне на bds 2006 в .NET
при помощи DirectoryServices добавить пользователя в доменную группу.

Нужно именно через DirectoryServices. Желателен кусок работающего кода.
В MSDN не посылать.
Автор: dmit000
Дата сообщения: 15.08.2006 13:51
спасибо за ответы
----------------------

Есть ли в природе редактор (по типу экселя) в котором очень даже просто можно формировать таблицу StringGrid, а на выходе получать код который можно вставить в код дельфи?
Автор: SERGE_BLIZNUK
Дата сообщения: 15.08.2006 19:32

Цитата:
Есть ли в природе редактор (по типу экселя) в котором очень даже просто можно формировать таблицу StringGrid, а на выходе получать код

я лично ничего не понял ;-(((
потрудитесь сформулировать задачу точнее... какой редактор? что вы в нем хотите внести - буквы, цифры, формулы? и что за код вы хотите получить на выходе?
код на Дельфи, который нарисует StringGrid и заполнит его вашими значениями??
исходная задача какая?
Автор: nuker2015
Дата сообщения: 15.08.2006 23:28
Пишу прозрачный компонент, наследник от TCustomControl.
Для прозрачности необходимо скопировать регион под контролом на канву контрола,
но CopyParentImage() копирует только изображения наследников TGraphicControl.
Что подскажете коллеги?
Автор: dmit000
Дата сообщения: 16.08.2006 05:22
SERGE_BLIZNUK

в общем прога должно делать следующее:

чтобы мне в ручную в коде программы не писать заполнение ячеек стрингрида нужна прога которая имеет интерфейс по типу экселя в которой я смогу просто в ячейки (как в эксели) вписывать то что мне нужно (цивры и буквы). При этом должна иметься возможность сохранять значение в файл и последующие считывание из файла), после заполнения таблицы при нажатии на кнопарь прога генерирует код заполненных ячеек который я просто вставляю в код своего файла PAS

пример кода:
Автор: sunduk4
Дата сообщения: 16.08.2006 06:37
dmit000
А что мешает самому написать?
Берешь стринггрид, кнопку.
Заполняешь значения в ячейках, по нажатию на кнопку -
цикл по строкам, в нем цикл по столбцам. на каждое значение собираешь строку кода типа 'твой_стринггрид.cell[' + №строки + ', ' + №столбца + '] := ' + значение_из_текущей_ячейки + ';'
И лей строки скрипта куда тебе нужно.
Сохранение в файл и заполнение - по тому дже принципу + AssignFile + Rewrite + WriteLn.
Автор: dmit000
Дата сообщения: 16.08.2006 07:05
sunduk4

опыта не хватает пока написать, но задачу я себе такую уже поставил. просто может уже есть у кого такая прога. вот и задал вопрос.

и к ттомуже прога должна иметь возможность вставлять (добавлять строки) и столбцы. в общем пробовал компанент F1Book он меня на 100% устраивает за исключением малого факта прога с использованием F1Book на чистых (без дельфи) компах не работает.
Автор: sunduk4
Дата сообщения: 16.08.2006 07:27
dmit000
F1Book - ActiveX компонент. Вместе с твоей программой нужно тянуть файлик vcf132.ocx и регистрировать его в системе - regsvr32 vcf132.ocx.
Плюс нужно тянуть еще 2-3 длл библиотеки. Навскидку сейчас не вспомню, но опытным путем установить не долго.
Автор: pit23
Дата сообщения: 16.08.2006 11:57
Подскажите пожалуйста возможно ли отсортировать главную таблицу по информации в подчиненной таблице в
Delphi 6. Использую два DBGrid -а и ADOTable. Таблицы связаны с помощью свойств MasterSource и MasterFields.
Автор: ShadowMen
Дата сообщения: 17.08.2006 13:56
Можно ли как нибудь изменить цвет Caption-а у CheckBox-а при включенном манифесте?
Автор: Vetal303
Дата сообщения: 18.08.2006 12:36
Подскажите, пожалуйста, как преобразовать шестнадцатеричное число (типа $fff6) в десятичное, с соблюдением знака
FFF6 -> -10

Спасибо!
Автор: greenpc
Дата сообщения: 18.08.2006 13:44
Vetal303
if StrToInt('$'+edt1.Text)> MAXWORD then
ShowMessage(IntToStr(StrToInt('$'+edt1.Text)- MAXWORD -1))
else ShowMessage(IntToStr(StrToInt('$'+edt1.Text)));
Автор: Vetal303
Дата сообщения: 18.08.2006 14:03
greenpc
РЕСПЕКТ ТЕБЕ!!!
Автор: OdesitVadim
Дата сообщения: 18.08.2006 17:53
Vetal303greenpc
Если чуточку мозги напряч, то можно и без if'ов обойтись (они сильно бьют по производительности)
Так как мы имеем дело с 2 байтовым, то пишем так
x:=SmallInt(WORD(strtoint('$'+s)));
для однобайтовых
x:=Shortint(byte(strtoint('$'+s)));
для 4байтовых
x:=Longint(Longword(strtoint('$'+s)));

такие преобразования типов прозрачны для компилятора, они просто нужны, что бы он не ругался на несовместимость типов.

ну s - надеюсь догадались, наше шестнадцатеричное число
Автор: kzsergo
Дата сообщения: 18.08.2006 18:49
Подскажите как вытащить из чужой библиотеки какую-нибудь функцию или форму, если я не знаю ее ни описания, ни имени.
Автор: Vetal303
Дата сообщения: 18.08.2006 19:40
OdesitVadim
Пасибо БОЛЬШОЕ, ты как всегда на высоте!!! тебе!!!
Автор: ShIvADeSt
Дата сообщения: 19.08.2006 04:18
kzsergo

Цитата:
Подскажите как вытащить из чужой библиотеки какую-нибудь функцию или форму, если я не знаю ее ни описания, ни имени.

Никак.
Автор: MrZeRo
Дата сообщения: 19.08.2006 11:53
kzsergo
Форму можно вытащить редактором ресурсов, например, PE Explorer. Но только DFM (без кода). Код можно только декомпилировать, н-р, при помощи dede, он дает ассемблерный код:

Цитата:

DeDe is a very fast program that can analyze executables compiled with Delphi:
- All dfm files of the target. You will be able to open and edit them with Delphi.
- All published methods in well commented ASM code with references to strings,
imported function calls, classes methods calls, components in the unit,
Try-Except and Try-Finally blocks.
...

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

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


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