سؤال

يتضمن تطبيق البيانات الأساسية المستند إلى المستند (باستخدام الروابط في IB) كيانين ، الموظف (بسمة اسم الموظف ) و الجدول الزمني (مع سمات timeDescription و entryDate ). لدى الموظف علاقة واحدة ( الموظف التفاصيل ) - بأطراف متعددة ( جدول بيانات الموظف ) مع الجدول الزمني .

أقوم بإنشاء إعداد تفاصيل رئيسية لإدخال جدول زمني.

بالنسبة إلى المعلم الرئيسي ، لديّ جدول عمود واحد يتضمن قيمته المرتبطة بـ: EmployeeController (وهو NSArrayController باستخدام كيان الموظف) ، مرتب الكائنات ، اسم الموظف .

لديّ عنصر تحكم تفاصيل (NSArrayController آخر) تم إعداده باعتباره NSMutableDictionary والذي يحتوي على contentSet مرتبط بـ EmployeeController و التحديد و < strong> EmployeeTimeSheet .

لدي بعد ذلك عرض جدول التفاصيل الذي يحتوي على ثلاثة أعمدة ، مع القيمة الخاصة بكل منها مرتبطة بـ DetailController و RankgedObjects و EmployedDetails.employeeName (العمود 0) و entryDate (العمود 1) و وصف الوقت (العمود 2).

الآن كل هذا يعمل بشكل جيد ، يمكنني تحديد موظف من الجدول الرئيسي ويعرض جدول التفاصيل جميع إدخالات الجدول الزمني المرتبطة بهذا الموظف. يمكنني إضافة إدخالات باستخدام الموظف المختار ، كل شيء يعمل بشكل رائع.

مشكلتي هي ، بدلاً من الحصول على tableView كطريقة عرض رئيسية ، أردت NSPopupButton في مكانه حيث يمكنني تحديد موظف وعرض جميع إدخالات الوقت المرتبطة بهذا الموظف.

لقد جربت كل مجموعة من المحتوى والقيمة والكائنات المرتبة والكائن (الكائنات) المحددة وما إلى ذلك مع كل مجموعة من وحدات التحكم التي أمتلكها ولكن لا يمكنني جعل NSPopupButton يتصرف بطريقة مماثلة لطريقة عرض جدول العمود الفردي.

لقد بحثت عبثًا عن مزيد من المعلومات حول هذا الأمر وقرأت وثائق الروابط عدة مرات ولكن استمر في الاختلاط. أشعر أن هذا يجب أن يكون بسيطًا نسبيًا ولكن لا يمكنني الحصول عليه. لقد كنت أرهق عقلي لما يقرب من يومين الآن قبل أن أنشر هنا.

هل يمكن لأي شخص أن يشير إلى أين أخطأت؟ كنت أرغب في كتابة الرمز البريدي ولكن هذا ليس مناسبًا حقًا لأنني أعلم أنه أمر وسيط.

بيلي

هل كانت مفيدة؟

المحلول 2

حسنًا ، لقد وجدتها.علمت أنه بعد النشر هنا سأجده على الفور.

لقد ربطت NSPopupButton content بـ EmployeeController و RankgedObjects و contentValue إلى EmployeeController و ترتيب الكائنات و اسم الموظف ، و تم تحديد الفهرس إلى EmployeeController و selectIndex .

يعمل بشكل رائع

بيلي

نصائح أخرى

بالمناسبة: سيتم ملء وحدة التحكم التفاصيل بكائن موظف جديد "تلقائيًا".تأكد من تعيين "MananObjectContext" على نفس وحدة التحكم (EmployerController).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top