الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

كيف أستطيع تغيير خاصية Text ضمن العنصر Showdetailheader برمجيا

Featured Replies

بتاريخ:

السلام عليكم
أنا عندي showDetailHeader وهو يتضمن جدول معين من قاعدة البيانات والمطلوب:
أريد أنه عندما أقوم بفتح showDetailHeader أن تكون خاصية text التابعة لها تحتوي عبارة ثابتة
وعندما أقوم بإغلاق showDetailHeader أن تصبح قيمة text هي قيمة بيانات أحد حقول الجدول الموجود فيه ووفق السطر الذي تم الوقوف عليه.
علما أنني استخدمت الحدث DisclosureListener وربطته مع managed Bean
public void changeText(DisclosureEvent disclosureEvent) {
if (disclosureEvent.isExpanded()) {
System.out.println("Expanded");
} else {
System.out.println("Colapsed");
}
}
وهو يعمل بشكل صحيح ولكن ما هو الكود الخاص بجلب قيمة بيانات السطر من الجدول المتضمن فيه
وماهو الكود الخاص بتغيير قيمة الخاصية text ضمن showDetailHeader

مع الشكر سلفا

بتاريخ:

اربط الخاصية بقيمة متغير وداخل الكود قم بتغيير قيمة هذا المتغير بما تريد

بتاريخ:
  • كاتب الموضوع

اربط الخاصية بقيمة متغير وداخل الكود قم بتغيير قيمة هذا المتغير بما تريد

مشكور أخ مصطفى

فقد عملت ذلك ونجحت عملية تغيير حقل text الخاص بـ showDetailHeader

ولكني لم أستطع جلب بيانات العمود الأول من الجدول الموجود ضمن الـ showDetailHeader

علما أنني استطعت جلب قيم الكثير من الخصائص للجدول والعمود ولكن خاصية value ترفع exception

وأعتقد أن السبب هو أنها تتضمن قيم متغيرة من قاعدة البيانات

<af:inputText value="#{row.bindings.Description.inputValue}"

أرجو المساعدة وهذا هو الكود:

[/left]

[left]
public void changeText(DisclosureEvent disclosureEvent) {
    if (disclosureEvent.isExpanded()) {
	  detailHeaderText = "Expanded";
			 } else {
	  detailHeaderText = "Colapsed";

	  List<UIComponent> children = disclosureEvent.getComponent().getChildren();
	  for (UIComponent child : children) {
	    if (child instanceof RichTable || child instanceof RichPanelCollection) {
		  RichTable myTable;
		  if (child instanceof RichPanelCollection)
		    myTable = (RichTable)child.getChildren().get(0);
		  else
		    myTable = (RichTable)child;

		  // this line print all row data
		  System.out.println("getSelectedRowData()"+myTable.getSelectedRowData().toString());

		  RichColumn myColumn = (RichColumn)myTable.getChildren().get(0);
	    
		  RichInputText myInputText = (RichInputText)myColumn.getChildren().get(0);

		  //this line print the label
		  System.out.println("getLabel()="+myInputText.getLabel());

		  //this line raise java.lang.NullPointerException
		  System.out.println("getValue()="+myInputText.getValue().toString());
		 break;
	    }
	   }
	 }[/left]

[left]

مع الشكر

تم تعديل بواسطة mhawad

بتاريخ:
  • كاتب الموضوع

لقد اكتشفت الحل وهو في الكود التالي:

   public void changeText(DisclosureEvent disclosureEvent) {
    if (disclosureEvent.isExpanded()) {
	  _detailHeaderText = "";
	 
    } else {	 
	  DCBindingContainer dcbc = ADFUtils.getDCBindingContainer();		 
	  Row row = dcbc.findIteratorBinding(getIterName()).getCurrentRow();
	  if (row != null) {
	    _detailHeaderText = row.getAttribute("Description").toString();
	  }
    }
   }



أرجو أن تعم الفائدة

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.