PDA

View Full Version : معادل دستور For Each در دلفي؟



A.Nemati
دوشنبه 06 آبان 1387, 16:08 عصر
در vb دستور For Each وجود دارد كه در دلفي معادل آن را نمي‌دانم. اين دستور را براي شبيه سازي كد زير مي‌خواهم.


For Each myStoryRange In ActiveDocument.StoryRanges
myStoryRange.Find.Execute _
...
Next myStoryRange


دوست ندارم ببينم كه دلفي از vb كم بياره.

Mahmood_M
سه شنبه 07 آبان 1387, 04:30 صبح
بهتره بگید دقیقا هدفتون چی هست ، همه دستورات دقیقا معادل ندارن و در برخی مواقع راه های رسیدن به هدف فرق میکنه ... !
مثلا باید مشخص بشه که در کد شما MyStoryRange از چه نوعی هست یا StoryRange چیه !
اما برای دستوری که گذاشتید شاید این بشه معادلش :

for I := 0 to ActiveDocument.StoryRangesCount - 1 do
begin
MyStoryRange := ActiveDocumet.StoryRanges[I];
MyStoryRange.Find.Execute;
end;

موفق باشید ...

vcldeveloper
سه شنبه 07 آبان 1387, 07:44 صبح
در vb دستور For Each وجود دارد كه در دلفي معادل آن را نمي‌دانم. اين دستور را براي شبيه سازي كد زير مي‌خواهم.
در چه نسخه ایی از دلفی؟ در دلفی 2007 به بالا (مطمئن نیستم که این توی دلفی 2006 هم بود یا نه) می تونید از for each به همون شکلی که در VB یا دات نت استفاده می کنید، در دلفی هم استفاده کنید. در نسخه های پایین تر هم می تونید از همون for ساده به شکلی که Mahmood_N گفتند، استفاده کنید.

m-khorsandi
سه شنبه 07 آبان 1387, 11:25 صبح
for in رو ميتونيد از دلفی 2005 به بالا برای كاراكترهای موجود در يك رشته، مقادير يك مجموعه و آيتم‌های آرايه استفاده كنيد.