ክፍል
ይዞታዎች
ማውጫ 🔎︎

# ተጨማ-ሪዎች ለ ፕሮግራም በ LibreOffice ሰንጠረዥ

ይህ የ ማስፊያ ዘዴ ለ ሰንጠረዥ ተጨማ-ሪዎች የ ተገለጸው ጊዜው ያለፈበት ነው: ይህ ገጽታ ውጋ ያለው እና የ ተደገፈ ነው: ተስማሚነቱን ለ ማረጋገጥ ከ ነበሩት ተጨማ-ሪዎች ጋር: ነገር ግን ለ አዲስ ተጨማ-ሪዎች ፕሮግራም እርስዎ መጠቀም አለብዎት አዲስ API ተግባሮች.

LibreOffice ሰንጠረዥ ማስፋት ይቻላል በ ተጨማ-ሪዎች: የ ውጪ ፕሮግራም ክፍሎች ተጨማሪ ተግባሮች በ ሰንጠረዥ ለ መስራት: እነዚህ ተዘርዝረዋል በ ተግባር አዋቂ በ ተጨማ-ሪዎች ምድብ ውስጥ:እርስዎ ፕሮግራም ማድረግ ከፈለጉ ተጨማ-ሪዎች: እርስዎ እዚህ መማር ይችላሉ የትኞቹ ተግባሮች መላክ እንዳለባቸው በ የሚካፈሉት መጻህፍት ቤት የ ውጪ DLL ስለዚህ ተጨማ-ሪዎች ማያያዝ ይችላሉ

LibreOffice መፈለጊያ የ ተጨማ-ሪዎች ፎልደር በ ማዋቀሪያ ውስጥ ተገልጿል በ ተስማሚው የሚካፈሉት መጻህፍት ቤት DLL ውስጥ: ለ መታወቅ በ LibreOffice, the የሚካፈሉት መጻህፍት ቤት DLL አንዳንድ ባህሪዎች ሊኖሩት ይገባል: በሚቀጥለው እንደ ተገለጸው: ይህ መረጃ እርስዎን የሚያስችለው የ ራስዎትን ተጨማሪዎች ፕሮግራም እንዲያደርጉ ነው: ለ ተግባር አዋቂ በ LibreOffice ሰንጠረዥ ውስጥ

## የ ተጨማ-ሪዎች ሀሳብ

እያንዳንዱ ተጨ-ማሪ መጻህፍት ቤት የሚያቀርበው በርካታ ተግባሮች ነው: አንዳንድ ተግባሮች የሚጠቅሙት ለ አስተዳደር ጉዳዮች ነው: እርስዎ ማንኛውንም ስም መምረጥ ይችላሉ ለ እርስዎ ተግባሮች: ነገር ግን አንዳንድ ደንቦች መከተል አለባቸው: ደንብን በሚለከት ለማለፍ: በ ትክክል መሰየም እና ስብሰባ መጥራት የ ተለዩ መድረኮችን ይከተላሉ

### ተግባሮች የሚካፈሉት መጻህፍት ቤት ተጨማ-ሪዎች DLL

አነስተኛ የ አስተዳዳሪ ተግባሮች የ ተግባሮች መቁጠሪያ ያግኙ እና የ ተግባሮች ዳታ ያግኙ መውጣት አለብዎት: እነዚህን ለ መጠቀም: ተግባሮች እንዲሁም እንደ ደንብ አይነቶች እና ዋጋዎች ይመልሳል እና መወሰን ይቻላል: እንደ መመለሻ ዋጋዎች: የ ድርብ እና ሀረገ አይነቶች የ ተደገፉ ናቸው: እንደ ደንቦች: በ ተጨማሪ የ ክፍል ቦታዎች ድርብ ማዘጋጃ ሀረግ ማዘጋጃ እና ክፍል ማዘጋጃ የ ተደገፉ ናቸው

ደንቦች የሚያልፉት ማመሳከሪያ በ መጠቀም ነው: ስለዚህ የ እነዚህ ዋጋዎች መቀየር በ መሰረቱ ይቻላል: ነገር ግን ይህ የ ተደገፈ አይደለም በ LibreOffice ሰንጠረዥ ውስጥ ምክንያቱም በ ሰንጠረዥ ውስጥ ምንም ስሜት አይሰጥም

መጻህፍት ቤቶችን እንደገና መጫን ይቻላል በ ማስኬጃ ጊዜ ውስጥ እና ይዞታዎቹን መመርመር ይቻላል በ አስተዳዳሪ ተግባሮች: ለ እያንዳንዱ ተግባር: መረጃ ዝግጁ ነው በ መቁጠሪያ እና ደንብ አይነት ውስጥ: የ ውስጥ እና የ ውጪ ተግባር ስሞች እና የ አስተዳዳሪ ቁጥር

ይህ ተግባር በ ተመሳሳይ ጊዜ ይባላል እና ውጤት ወዲያውኑ ይመልሳል: በ ተመሳሳይ ጊዜ (በ ተለያየ ጊዜ) እንዲሁም ይቻላል: ነገር ግን: በደንብ አልተገለጹም ምክንያቱም በጣም ውስብስብ ነው

## ባጠቃላይ መረጃ ስለ ገጽታ

ከፍተኛው ቁጥር ደንብ ከ ተጨማሪ ተግባር የተያያዘው ከ LibreOffice ሰንጠረዥ ጋር 16: ነው: አንድ መመለሻ ዋጋ እና ከፍተኛ 15 ተግባር ማስገቢያ ደንብ

የ ዳታ አይነቶች እንደሚቀጥለው ተገልጸዋል:

የ ዳታ አይነቶች | ትርጉም
የ ጥሪ አይነት | በ መስኮት ውስጥ: FAR PASCAL (_far _pascal) ሌላ: ነባር (የ መስሪያ ስርአት የ ተወሰነ ነባር)
USHORT | 2 ባይት ያልተመደበ ኢንቲጀር
ድርብ | 8 ባይት መደረክ-ጥገኛ አቀራረብ
መደበኛ አይነት | መድረክ-ጥገኛ እንደ ኢንቲጀር ጠቋሚ_ድርብ =0 ጠቋሚ ወደ ድርብ ጠቋሚ_ሀረግ =1 ጠቋሚ ወደ ዜሮ-የተወገደ ሀረግ ጠቋሚ_ድርብ_ማዘጋጃ =2 ጠቋሚ ወደ ድርብ ማዘጋጃ ጠቋሚ_ሀረግ_ማዘጋጃ =3 ጠቋሚ ወደ ሀረግ ማዘጋጃ ጠቋሚ_ክፍል_ማዘጋጃ =4 ጠቋሚ ወደ ክፍል ማዘጋጃ ምንም =5

## የሚካፈሉት መጻህፍት ቤት DLLተግባሮች

እርስዎ ቀጥሎ መግለጫዎች ያገኛሉ ለ እነዚህ ተግባሮች: የሚባሉ በ የሚካፈሉት መጻህፍት ቤት external DLL .

ለሁሉም የሚካፈሉት መጻህፍት ቤት DLL ተግባሮች የሚቀጥለው ይፈጸማል:

ባዶ የ መጥሪያ አይነት ተግባር(ውጪ: ውስጥ1, ውስጥ2, ...)

ውጤት: የ ውጤት ዋጋ

ማስገቢያ: ማንኛውም አይነት ቁጥር (ድርብ&: ባህሪ*: ድርብ*: ባህሪ**: የ ክፍል ቦታ) ይህ የ ክፍል ቦታ የ ማዘጋጃ አይነት ነው: ለ ድርብ ማዘጋጃ: የ ሀረግ ማዘጋጃ: ወይንም ለ ክፍል ማዘጋጃ

### የ ተግባሮች መቁጠሪያ ያግኙ()

የ ተግባሮች ቁጥር ይመልሳል ያለ ተግባሮች አስተዳዳሪ ለ ማመሳከሪያ ደንብ: እያንዳንዱ ተግባር የ ተለየ ቁጥር አለው በ 0 እና nመቁጠሪያ-1. መካከል: ይህ ቁጥር ያስፈልጋል ለ የ ተግባር ዳታ ማግኛ እና የ ደንብ መግለጫ ተግባር ማግኛ ለ ተግባሮች በኋላ

አገባብ

void CALLTYPE GetFunctionCount(USHORT& nCount)

ደንብ

USHORT &nCount:

ውጤት: ማመሳከሪያ ለ ተለዋዋጭ: ቁጥሩን ለሚይዘው ለ ተጨ-ማሪ ተግባር: ለምሳሌ: ይህ ተጨ-ማሪ የሚያቀርበው 5 ተግባሮች ለ LibreOffice ሰንጠረዥ: ከዛ nመቁጠሪያ=5.

### የ ዳታ ተግባር ያግኙ()

ሁሉንም አስፈላጊ መረጀ ስለ ተጨ-ማሪ ተግባር መወሰኛ

አገባብ

void CALLTYPE GetFunctionData(USHORT& nNo, char* pFuncName, USHORT& nParamCount, Paramtype* peType, char* pInternalName)

ደንብ

USHORT& nNo:

ማስገቢያ: የ ተግባር ቁጥር በ 0 እና በ nመቁጠሪያ-1, መካከል ባጠቃላይ

char* pFuncName:

ውጤት: የ ተግባር ስም ለ ፕሮግራመሩ እንደሚታየው በ የሚካፈሉት መጻህፍት ቤት DLL ይህ ስም አይወስንም የሚጠቀሙትን ስም ለ ተግባር አዋቂ

USHORT& nParamCount:

ውጤት: የ ደንቦች ቁጥር በ ተጨማሪ ተግባሮች ውስጥ: ይህ ቁጥር መብለጥ አለበት ከ 0, ምክንያቱም ሁልጊዜ ውጤት ዋጋ ስለሆነ: ከፍተኛው ዋጋ 16. ነው

የ ደንብ አይነት* peአይነት:

ውጤት: መጠቆሚያ ወደ መለያ በ ቀጥታ 16 ተለዋዋጮች አይነት ለ ደንብ አይነት: የ መጀመሪያው የ ደንብ መቁጠሪያ ቁጥር ማስገቢያ በ ተስማማሚው አይነት ደንብ ይሞላል

ባህሪ* የ ደንብ የ ውስጥ ስም:

ውጤት: የ ተግባር ስም በ ተጠቃሚው እንደሚታየው በ ተግባር አዋቂ ምናልባት ሊይዝ ይችላል ምልክት ( ¨ )

የ ደንብ ተግባር ስም እና የ ደንብ የ ውስጥ ስም ደንቦች የ ባህሪ ማዘጋጃ ናቸው: የሚፈጸሙ በ 256 መጠን በ LibreOffice ሰንጥረዥ ውስጥ

### የ ደንብ መግለጫ ያግኙ()

ግልጽ መግለጫ ማቅረቢያ ለ ተጨ-ማሪ ተግባር እና ደንቦቹ: እንደ ምርጫ ይህን ተግባር መጠቀም ይቻላል ተግባር ለማሳየት እና ደንቦችን ለ መግለጫ በ ተግባር አዋቂ ውስጥ

አገባብ

void CALLTYPE GetParameterDescription(USHORT& nNo, USHORT& nParam, char* pName, char* pDesc)

ደንብ

USHORT& nNo:

ማስገቢያ: ቁጥር ለ ተግባር በ መጻህፍት ቤት ውስጥ: በ 0 እና nመቁጠሪያ-1. መካከል

USHORT& nParam:

ማስገቢያ: የሚያሳየው መግለጫው ለ የትኛው ደንብ እንደ ተሰጠ ነው: ደንብ የሚጀምረው በ 1. ነው: የ ደንብ ቁጥር 0, ከሆነ: መግለጫው ራሱ መሰጠት አለበት በ ደንብ መግለጫ ውስጥ: ስለዚህ ይህ የ ደንብ መግለጫ ምንም ትርጉም አይኖረውም

ባህሪ* የ ደንብ ስም:

ውጤት: የሚወስደው የ ደንብ ስም ወይንም አይነት: ለምሳሌ: ይህ ቃል "ቁጥር" ወይንም "ሀረግ" ወይንም "ቀን": እና ወዘተ: የሚፈጸመው በ LibreOffice ሰንጠረዥ እንደ ባህሪ[256] ነው

ባህሪ* የ ደንብ መግለጫ:

ውጤት: የሚወስደው የ ደንብ መግለጫ ነው: ለምሳሌ: "ዋጋ: ጠቅላላ የሚሰላበት" የሚፈጸምበት በ LibreOffice ሰንጠረዥ እንደ ባህሪ[256] ነው

የ ደንብ ስም እና የ ደንብ መግለጫ ባህሪ ማዘጋጃ ናቸው: የሚፈጸሙ በ LibreOffice ሰንጠረዥ ውስጥ በ 256. መጠን: እባክዎን ያስታውሱ ዝግጁ ክፍተት ያለው በ ተግባር አዋቂ የ ተወሰነ ነው እና 256 ባህሪ በ ሙሉ አይጠቀምም

## የ ክፍል ቦታዎች

የሚቀጥሉት ሰንጠረዦች መረጃ ይዘዋል ስለ የትኛው የ ዳታ አካሎች መቅረብ እናዳለባቸው በ ውጪ ፕሮግራም ክፍል የ ክፍል ቦታ ለማለፍ LibreOffice ሰንጠረዥ ይለያል በ ሶስት የተለያዩ ማዘጋጃዎች እንደ ዳታው አይነት

### ድርብ ማዘጋጃ

እንደ ደንብ: የ ክፍል ቦታ ከ ዋጋዎች ጋር የ ቁጥር/ድርብ አይነት ማሳለፍ ይቻላል: ድርብ ማዘጋጃ በ LibreOffice ሰንጠረዥ ውስጥ የሚገለጸው እንደሚከተለው ነው:

ማካካሻ | ስም | መግለጫ
0 | አምድ1 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
2 | ረድፍ1 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
4 | Tab1 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
6 | አምድ2 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
8 | ረድፍ2 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
10 | Tab2 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
12 | መቁጠሪያ | የሚቀጥሉት አካላቶች ቁጥር: ባዶ ክፍሎች አይቆጠሩም ወይንም ይታለፋሉ
14 | አምድ | የ አምድ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
16 | ረድፍ | የ ረድፍ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
18 | ማስረጊያ | የ ሰንጠረዥ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
20 | ስሀተት | ስህተት ቁጥር: ዋጋው 0 የሚገለጽበት እንደ "ስህተት አይደለም" አካሉ ከ መቀመሪያ ክፍል ውስጥ ከ መጣ የ ስህተት ዋጋ የሚወሰነው በ መቀመሪያ ነው
22 | ዋጋ | 8 ባይት IEEE ተለዋዋጭ ለ አይነት ድርብ/ተንሳፋፊ ነጥብ
30 | ... | የሚቀጥለው አካል

### ሀረግ ማዘጋጃ

የ ክፍል ቦታ: ዋጋዎች የያዘ የ ዳታ አይነት ጽሁፍ እና ማሳለፍ የሚቻል እንደ ሀረግ ማዘጋጃ: የ ሀረግ ማዘጋጃ በ LibreOffice ሰንጠረዥ ውስጥ የሚገለጸው እንደሚከተለው ነው

ማካካሻ | ስም | መግለጫ
0 | አምድ1 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
2 | ረድፍ1 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
4 | Tab1 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
6 | አምድ2 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
8 | ረድፍ2 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
10 | Tab2 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
12 | መቁጠሪያ | የሚቀጥሉት አካላቶች ቁጥር: ባዶ ክፍሎች አይቆጠሩም ወይንም ይታለፋሉ
14 | አምድ | የ አምድ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
16 | ረድፍ | የ ረድፍ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
18 | ማስረጊያ | የ ሰንጠረዥ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
20 | ስሀተት | የ ስህተት ቁጥር: ይህ ዋጋ 0 የሚገለጸው እንደ "ስህተት የለም" አካሉ ከ መቀመሪያ ክፍል ውስጥ ከመጣ የ ስህተት ዋጋ የሚወሰነው በ መቀመሪያ ነው
22 | እርዝመት | የሚቀጥለው ሀረግ እርዝመት: የ መዝጊያ ዜሮ ባይት ያካትታል: እርዝመት የ መዝጊያ ዜሮ ባይት እኩል ከሆነ እና ጎዶሎ ዋጋ ካለው ሁለተኛ ዜሮ ባይት ይጨመራል ወደ ሀረግ ውስጥ ስለዚህ ሙሉ ዋጋ ማግኘት ይቻላል: ስለዚህ እርዝመት የሚሰላው በ መጠቀም ነው ((StrLen+2)&~1).
24 | ሀረግ | ሀረግ ከ መዝጊያ ዜሮ ባይት ጋር
24+እርዝመት | ... | የሚቀጥለው አካል

### ክፍል ማዘጋጃ

የ ክፍል ማዘጋጃ የሚጠቅመው ለ የ ክፍል ቦታ ለመጥራት ነው ጽሁፍ የያዘ እንዲሁም ቁጥሮች: የ ክፍል ማዘጋጃ በ LibreOffice ሰንጠረዥ የሚገለጸው እንደሚከተለው ነው:

ማካካሻ | ስም | መግለጫ
0 | አምድ1 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
2 | ረድፍ1 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
4 | Tab1 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ላይ-በ ግራ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
6 | አምድ2 | የ አምድ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
8 | ረድፍ2 | የ ረድፍ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
10 | Tab2 | የ ሰንጠረዥ ቁጥር በ ክፍል ውስጥ ከ ታች-በ ቀኝ ጠርዝ በኩል ያለው ቦታ ነው: ቁጥር የሚጀምረው ከ 0 ነው
12 | መቁጠሪያ | የሚቀጥሉት አካላቶች ቁጥር: ባዶ ክፍሎች አይቆጠሩም ወይንም ይታለፋሉ
14 | አምድ | የ አምድ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
16 | ረድፍ | የ ረድፍ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
18 | ማስረጊያ | የ ሰንጠረዥ ቁጥር ለ አካሉ: ቁጥር የሚጀምረው ከ 0 ነው
20 | ስህተት | የ ስህተት ቁጥር: ይህ ዋጋ 0 የሚገለጸው እንደ "ስህተት የለም" አካሉ ከ መቀመሪያ ክፍል ውስጥ ከመጣ የ ስህተት ዋጋ የሚወሰነው በ መቀመሪያ ነው
22 | አይነት | የ ክፍሉ ይዞታ አይነት: 0 == ድርብ, 1 == ሀረግ
24 | ዋጋ ወይንም እርዝመት | ከሆነ አይነት == 0: 8 ባይት IEEE ተለዋዋጭ ለ አይነት ድርብ/ተንሳፋፊ ነጥብ አይነት ከሆነ == 1: የሚቀጥለው ሀረግ እርዝመት: የ መዝጊያ ዜሮ ባይት ያካትታል: እርዝመት የ መዝጊያ ዜሮ ባይት እኩል ከሆነ እና ጎዶሎ ዋጋ ካለው ሁለተኛ ዜሮ ባይት ይጨመራል ወደ ሀረግ ውስጥ ስለዚህ ሙሉ ዋጋ ማግኘት ይቻላል: ስለዚህ እርዝመት የሚሰላው በ መጠቀም ነው ((StrLen+2)&~1).
26 አይነት ከሆነ==1 | ሀረግ | አይነት ከሆነ==1: ሀረግ ከ መዝጊያ ዜሮ ባይት ጋር
32 ወይንም 26+እርዝመት | ... | የሚቀጥለው አካል